The Easily Amused's Guide to Searching GitHub Issues
The GitHub UI is great if you want to see which issues are assigned to you, or for planning out your next milestone iteration, or if you’re optimizing zzzzzzzzzz god i’m already bored talking about all this work stuff. Let’s find out how many open source projects have a label named
Some ground rules
I’m going to run through a bunch of advanced search terms that GitHub lets you filter on. Two places to use these: the global github.com/search search page, and the repository search page (here’s Bootstrap’s search page, for example).
Take special note of any filter syntax here that might help you in your day-to-day job, and then forget all about them and go eat a donut or something.
Make no mistake: programmers make mistakes. For example, use
in:title to specifically search the title field and see all of the reverts of reverted reverts:
is:pr "revert revert revert" in:title
Still cedes the victor chair to those who have reverted reverts of reverted reverts, though:
is:pr "revert revert revert revert" in:title
Merged Pull Requests
is:merged will filter by pull requests that have been merged.
Here’s a few thousand pulls that blaze a trail:
is:merged is:pr "don't merge this"
Luckily there is one among us that realize programmers don’t read anything and need a little more explicit encouragement.
is:pr "for the love of god don't merge this"
That pull was merged, too, btw.
According to Google Trends, brogrammers really hit their stride in July 2011:
We should dig deeper, though, and figure out who were the bro trailblazers before brogrammers were a thing.
closed: all accept datestamps, either before or after scopes, with
>YYYY-MM-DD, or ranges, like
YYYY-MM-DD..YYYY-MM-DD. So, assuming the birth of the brogrammer term hit around July 2011, we can scientifically verify who bro’d it up before it was (un)cool. Basically bro hipsters. Or brosters.
language: filter in your query and you can get instant ammunition for language flamewars.
For example, there’s a half-dozen issues in Go repositories talking about metaprogramming:
Ruby developers, on the other hand, CAN”T GET ENOUGH METAPROGRAMMING in their 400 issues, which are all probably dynamically referencing each other, although it’d take a few hours to figure out exactly how they’re doing that before we give up and just rewrite the goddamn thing in six small methods instead god why do I have to do this every single time oh right here’s the syntax:
Also here are a bunch of eager beavers:
language:objective-c swift rewrite
Here’s a list of folk who probably commented on a heavily-trafficked thread, likely posted in a funny meme photo, and then got real mad that they got millions of notifications from people doing the same thing afterwards:
comments:>50 unsubscribe thread
You can also narrow searches just to the comments with
in:comments. Here’s a bunch of open pulls that got the shipit squirrel — — dropped in them:
in:comments is:open is:pr shipit
mentions: filter lets you search through all issues and pull requests that mention a specific user.
Here, we can see the number of people complimenting Linus on his inclusive demeanor:
mentions:torvalds sweet demeanor
Would you like to know more? The full list of search filters are listed on the help site.