Implying any sort of rules in a team always needs to come with solid reasoning to be accepted. Especially developers often take regulations as an offense against creativity and productivity, but they don't have to be right.
Having team standards for the code review process or maintaining a clear code change history can improve team productivity and even morale!
Code management policies have many other known benefits:
- They make it easier for new joiners to pick up the pace or trace back changes to actual bugs or requirements.
- They can make code reviews faster.
- In regulated industries, a clear change history is your best friend when auditors from authorities come knocking.
Use the power of preparedness and the best code review tools to overcome the rejection you face when introducing code management guidelines.
Preparation and rules for better code reviews
"Preparation" is a broad term and can mean different things to developer teams with different cultural backgrounds, different software products, and different methodologies.
While preparation can take many forms, there are a few useful ideas to remember that foster a better code review experience. The power of these suggestions is that they are all aimed to clear unnecessary disturbing factors ahead of the code review.
If you follow the "state of code review", you know that the modern code review is more of a conversation, with empathetic, open-ended questions and suggestions as well as clear instructions and approvals. A sensible and appreciative tone for commenting on your colleague's work does not only yield better code but also supports morale by creating an inclusive and honest work environment.
Being prepared for code reviews also shows respect for your colleagues. It's your effort to allow the reviewer to concentrate on the code changes at hand and not waste time with things that don't necessarily need human intelligence.
4 easy ways to get ready for the code review
- Use automated code linters and style checkers, so non-formatted code parts or annoying style guide violations don’t distract reviewers.
- Make sure the review assignee is notified on time and pull requests are routed intelligently and don’t pile up at one reviewer.
- If you work across offices and time zones, try finding reviewers in the same timezone to enable a possibility for a live video chat.
- Introduce and automate a standard for code commits that define rules for committers, commit messages, changed files and more, customized by repository or team preferences.
Using Jira for commit verification in GitHub Enterprise
Jira is commonly used together with GitHub Enterprise, and it's a valid requirement to verify code changes in GitHub Enterprise based on Jira information.
If you are using GitHub Enterprise and Jira to manage development work, you can build a commit policy system that verifies changes pushed against your production repository.
Better Commit Policy connects Jira with GitHub Enterprise to provide a framework for a set of advanced commit verification rules for your developer team. More precisely, it helps you install pre-receive hooks in GitHub Enterprise managed repositories that allow you to use information in Jira when verifying commits.
Select GitHub Enterprise to create the Better Commit Policy hook script
When your developers push changes to your GitHub Enterprise repository you can instantly check:
- if the committer is the right Jira assignee who should be working on this change?
- if the committer is a member in a specific Jira group?
- if the commit message references an in-progress Jira issue from the right Jira project?
- if the developer is trying to change files only in the file path they supposed to?
- ...and many other aspects of the changed files, the commit message and the committer.
A commit rejected by GitHub Enterprise when it's not compliant with the commit policy
If the proposed changes are not compliant, the developer is notified with instructions on what exactly is required for a compliant commit.
Create robust commit policies that will guard your repository and make it audit-proof with commit verification!