All Articles
8 Productivity Tips for Github
Published on January 9th 2019
With the recent announcement of unlimited private repositories, let’s take a few
minutes before we push up the code we don’t want anyone else to see, and make
sure we’re making the most of what GitHub has to o er.
GitHub is built with some extremely helpful shortcuts and productivity-boosting
features. From personal experience, however, it’s clear that these often fall under the
radar amongst developers. If I’ve ever witnessed a speci c GitHub feature surprise or
assist someone, then that feature is on this page. That said, what follows is by no
means an exhaustive list.
Quick fuzzy le search in repositories
This is, without doubt, the fastest way to browse a repository when you know what
you’re looking for. Open up any repository and press t . You can now search for the
name of any le in the repository, and use the arrow keys on your keyboard to move
through the results. Press Enter to open the le.
Code change suggestions in pull requests
When commenting on a piece of code in a pull request, you can suggest alternative
code using the “Suggested Changes” feature. The author of the pull request will be
able to apply your suggestion instantly without leaving GitHub.
To make the suggestion, surround a code snippet with a multiline Markdown snippet,
with the tag suggestion
suggestion:
Now that you’ve made the suggestion, the author of the pull request can immediately
apply it to their branch, without the hassle of manually changing the le!
Navigate the code tree like in an IDE
This one requires an uno cial Chrome extension, but it’s a slightly more familiar way
to navigate your code compared to the default interface. The Octotree extension lets
you browse GitHub repositories with a sidebar tree view similar to what you get in
applications like VS Code.
Jump to a function when reviewing code
Unless you’re reviewing a single function, a code review often involves a lot of
jumping between function calls and their de nitions (and therefore a lot of scrolling
up and down). GitHub lets you jump to a symbol by pressing t when you’re looking at
les in a pull request.
Creating a permalink to a le
When viewing a le or directory, press y , and the URL will be converted to a
permalink, which you can share knowing that the contents of the le will never
change.
If you send a link to a le or directory on GitHub without making it into a permalink,
you’ll need to accept the possibility that the le could disappear tomorrow, breaking
the link!
Viewing the blame and change recency
heatmap
When viewing a le, you can press b to view the Git blame and a heatmap showing
how recently each line was changed. It’ll tell you who most recently changed each line
of code, and give you a clickable link taking you to the full commit the change was
part of.
On the right-hand side of the gutter (which contains the commit message and
author), you’ll notice an orange vertical bar. The more vivid this bar is, the more
recent the change, meaning you can easily scan the le to nd the freshest code!
Powerful code search
GitHub indexes most code and o ers powerful search functionality over it. If you
need to nd something in a repository, but don’t plan on making any changes to it.
There’s usually no need to check the repository out. Press / to search all the code in
the repository.
If your search contains multiple words and you want to search for occurrences of
your speci c search query, put the quotations around the query. You can lter your
searches by other things too, such as le size, extension, the path the le is on, and
much more.
Saved replies
If you ever nd yourself repeating the same comments, you’ll save some time by
creating a saved reply. The next time you nd you’re going to type that comment
again, you can instead just select it from a drop-down menu:
To perform the above action without using my mouse, I can do ctrl + . followed by ctrl
+ 1.
1
Conclusion
Thanks for reading. I hope you found at least one thing on this page that will make
you a more productive GitHub user. If you enjoyed this post or have any feedback in
general, let me know! If you’re interested in more content like this, follow my Twitter.
git github productivity tips
Darren Burns
I'm a Software Engineer working at FanDuel in Edinburgh, Scotland.
Follow me on Twitter!