GNU Astronomy Utilities manual

Previous: , Up: Contributing to Gnuastro   [Contents][Index]


10.11.2 Production workflow

Fortunately Pro Git has done a wonderful job in explaining the different workflows in Chapter 5118 and in particular the “Integration-Manager Workflow” explained there. The implementation of this workflow is nicely explained in Section 5.2119 under “Forked-Public-Project”. Upon a release, a tag will be put on the appropriate commit in master marking the release version. So, whomever clones Gnuastro will automatically go onto the ready to be used master branch that contains bug-fixes or additions that might not yet be released. Anything on the master branch should always be tested and ready to be used.

As fully elaborated in Pro Git, there are two methods for you to contribute to Gnuastro in this workflow:

  1. You can send commit patches by email as fully explained in Pro Git. This is good for your first few contributions, if you would like to get more heavily involved in Gnuastro’s development, then you can try the next solution.
  2. You can have your own forked copy of Gnuastro on any hosting site you like (GitHub, GitLab, BitBucket, or etc) and inform us when your changes are ready so we merge them in Gnuastro. This is more suited for people who commonly contribute to the code.

    Just please follow the feature branch methodology: create a new branch for every feature you want to add from the most recent master commit in the main repo, when your work is done, inform us of your repository and the branch. After testing it and if everything is working fine, we will merge it into the main repository. If you have made temporary branches within that branch, it is best to rebase them into one branch before you inform us.

In both cases, your commits (with your name and information) will be preserved and your contributions will thus be fully recorded in the history of Gnuastro. Needless to say that in such cases, be sure to follow the bug or task trackers and contact us before hand so you don’t do something that someone else is already working on. In that case, you can get in touch with them and help the job go on faster, see Gnuastro project webpage.


Footnotes

(118)

http://git-scm.com/book/en/v2/Distributed-Git-Distributed-Workflows

(119)

http://git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project


Previous: , Up: Contributing to Gnuastro   [Contents][Index]


Read in other formats.
GNU Astronomy Utilities manual, November 2015.