Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

As someone who has developed a product that will let you search a Git repository, I can say there is a lot of moving parts. And I can see why Bitbucket, GitHub, and others don't support it. Working at their scale does present a lot of challenges.

The biggest challenge is knowing what to consider and I solve this by enforcing a context for every search. For example, if I know you are looking at 7 different branches, as the image below shows:

http://i.imgur.com/L7aHr2r.png

I will only consider these branches when you do a search.

http://i.imgur.com/JYHgB6I.png

Searching code presents a unique challenge since your code base is constantly changing. And without the user giving you hints about what to consider, you'll just end up generating a lot of noise.

Another example of how context simplifies things, is in the image below, I know you are looking at a tree

http://i.imgur.com/l8Y0oLA.png

so I will only search that tree

http://i.imgur.com/CIxHPjr.png

When searching code, you really can't guess what is important or not since what mattered in the morning may not in the evening. You really need the user to guide you and as you can see in my screenshots, I had to implement a new way of exploring Git. The current way of browsing one repository at a time will not work in a lot of enterprise environments since a product is usually a combination of branches from different repositories from different time lines.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: