Is every piece of code in the right place, i.e.When a PR gets LGTMed ("looks good to me"), it will be merged by the author, and the feature branch should be deleted from both the local machine as well as from Github.If your reviews usually take several rounds, try to be more thorough before sending off your PRs. Well written codebases get reviewed in one iteration (one set of comments, one round of fixes, good to go).Getting comments on your PR is good, it means you are alive and learning. No comments on a PR means the review was not thorough enough.Mark pull requests that should not be merged as "WIP" in the PR title ("WIP: new settings page").You can use multiple reviewers for different types of code. Every piece of code (backend, database changes, HTML, CSS) must be reviewed.You need to tag the reviewers in the description of your pull request This is especially important on larger projects because it helps people know what PRs need their attention.Bonus points if you find issues in the code of senior people! Finding and pointing out issues in PRs is a good thing.
Getting a third opinion is a good option. if you don't want to do it, say why and come to an agreement with your reviewer about this issue. All feedback given in a PR must be at least addressed, i.e.Refactorings should be reviewed by the tech lead or architect.Everyone can (and should) review everyone else's pull requests.The tone should be constructive and positive. The goal is for everyone to hold one another to a high standard, for everyone to learn from each other, and to catch architectural and other mistakes before they make it into the main branch. Pull requests are how we ensure quality and share knowledge. When you are done with a feature, submit a pull request so that it can be reviewed and merged into the development branch. Make sure you consider that both sides of the conflict contain changes that happened at the same time, so both changes should be present in your resolved code. open the conflicting files in your editor and resolve the conflicts.use git status to see which files have conflicts.Write good commit messages: A 50 character summary written in imperative ("fix signup") or as a short summary for features ("logout button"), followed by an empty line, followed by an optional longer description.Ĭonflicts happen when two developers change the same line in the same file at the same time.Squash the commits on your feature branch, or do a squash commit when merging into the main branch, so that it appears there as a single atomic commit.Always review your work before committing it.Rather, get into the habit of doing one thing at a time, reviewing and committing it when done, then doing the next. Don't accumulate dozens of changes before committing. Commit frequently during your work, each time a dedicated change is done and the tests pass.Each commit into the main branch should contain only one particular change.Note that JIRA expects the ticket key to be capitalized. if the project integrates with a ticket-tracking system, feature branches should be named using the following convention: "-", e.g. kg-OR-16-new-settings-page.other servers have long-lived branches that match them by name: the staging branch matches the staging server etc.the master branch matches what is in production.the development branch matches the development server.feature branches are cut from the development branch, and get merged into it.Feature branches are named like "-", e.g. kg-new-settings-page.Refactorings and bug fixes should be in their own feature branches, and be reviewed separately.One (or more) feature branches per user story.Your GitHub account is used to access a lot of things, and it is important to know that changes really come from you, even if you work on open-source code. Please make sure you have 2 factor authentication enabled. They should be followed in the absence of good, justifiable reasons to do things differently.