Skip to content

Hardware Team Modified GitFlow

ab7289 edited this page Mar 6, 2020 · 1 revision

Overall Master Branch

Master

Hardware Team Develop Branch

hardware-team

Strategy

Branching

When working on a feature or trying out some new code, create a branch off of hardware-team to insure that we are working from the same codebase. Name your branch something that you will be able to keep track of, as there will be lots of branches in the system from other teams.

Keeping hardware-team up to date with Master

Since hardware-team is branch protected, syncing it with Master will have to be done via pull request. To speed up this process when hardware-team is behind Master, create a branch off Master call sync-hardware. Once this is done, a PR from sync-hardware can be created into hardware-team. DO NOT include your own code in these sync branches, ONLY include updates from master. This insures that the entire team knows that these PRs are safe, and thus can be immediately approved and merged into hardware-team by the first teammate that notices it.

Merging into hardware-team through Pull Requests

When you believe that your code is ready, first check to make sure that hardware-team is up to date with Master. You can do this by running git remote update to insure that your remote has the most up-to-date code, and then running git diff origin/hardware-team while the hardware-team branch is currently checked out. If there are any differences between your local hardware-team branch and the remote, that means there are updates you need to incorporate. First, merge the changes from origin/hardware-team into your local copy so that next time you can again perform this check, then switch to your feature branch and merge the updates from origin/hardware-team into it. Once that is done, you can open a PR against the hardware-team branch.