Page tree
Skip to end of metadata
Go to start of metadata

Development work should not be done directly on a master or release branch.

This will allow more fine grained control of what bugs make it into a particular release. Instead each bug should be fixed within its own branch. Name the branch after the open JIRA ticket so there is a relationship between the two.

Creating a bug fix branch

Create new branch
git checkout -b bugfix/vov-xxxx

Completed bugs should include fixes as well as good test coverage that documents the problem. This will prevent the same thing from coming up again after code rewrites / feature changes. Once you are done push your commits to your branch.

Committing changes
git push origin bugfix/vov-xxxx

Merging bug fixes

Once a bug fix is ready to be tested by team members it needs to be merged into the current release. This should be done by issuing a pull request from the same repository. For help on how to do so check Github's documentation.

The release manager will be responsible for merging the pull request into the current release branch (in this case release/1.0.0).

Institutional specific forks

In addition to the generic avalon repository there are localized forks for both Northwestern and Indiana University specific updates. In case the patches apply only to one of these follow the instructions above but replace references to avalonmediasystem/avalon with the appropriate repository. Both should be synced nightly with the main branch to capture any upstream changes. To manage this on your local machine follow these instructions provided by EvanPro.

git remote add upstream git://

This will add a upstream repository that can be referenced whenever you want to merge changes into the local branch.

git fetch upstream
git rebase upstream/release/1.0.0
git push origin release/1.0.0
  • No labels