If you have more than zero co-workers you are probably using some kind of platform to help you with pull requests and reviews. If your platform of choice is GitHub, you're in luck. We compiled a list of tools and tricks that can help you get your commits merged in that sweet master branch as fast as possible.
Writing a good pull request template can help you and teammates find a common ground on how to summarize what's in a PR. You can also add a checklist if there are some requirements that have to be met before it can be merged.
With the new GitHub actions you can automatically label your pull requests based on what files you touched in your pull request. This can help a lot with the discoverability of your pull request overview.
To set this up, go to your GitHub repo with actions enabled, click on "New workflow" and once in the marketplace scroll down to "Automate every step in your process" where you'll find the "labeler" action:
We can take the automatic labeling of your pull request one step further. There is a feature in GitHub called "code owners" which lets you assign co-workers to certain parts of your application(s). GitHub will use code owners to automatically assign reviews.
Setting up code owners is easy, check this guide to get started with code owners.
One thing that has been very helpful to our team is the addition of Pull panda. It is a Slack integration that automatically sends a message to your co-workers when someone requests their review.
When you request a review, the reviewer gets a message like:
If someone approves your pull request, you'll be notified as well:
Even if someone comments on your pull request, panda will show you the comments right away in Slack:
After applying all these steps, Our pull request get's labeled automatically, the correct reviewers get assigned automatically and they receive a Slack message reminding them that there is work to be done. Now there is one final thing for
us the robots to do, merge the pull request into the master branch! If your team uses any form of automated checks on pull requests, you have probably already wasted some time blindly staring at your screen until the merge button turns green.
With another GitHub action called automerge, this is a thing of the past. This action automatically merges your pull request based the preferences of your team.
For instance: We set up automerge to merge a pull request once:
- An "automerge" label is added to the pull request
- All required checks are complete and successful
- All the required reviews are approved
And of course after your pull request is automatically merged, you get a message from pull panda:
I hope this list gives you some inspiration on how to automate the little things in your workflow. Even though these steps are probably not the worst bottlenecks for the speed of your team, saving a few minutes per pull request can quickly add up to something worthwhile.
If you liked this blog, please let us know by giving us some claps, retweets or likes.
If you think working at MyOnlineStore would be something for you, here are our job openings (NL).
If you have questions about this blog or just want to get in touch, you can tweet to me at https://twitter.com/CarloPalinckx
You can find more of our blogs on Medium