Wiki

Clone wiki

TEOBResumS / EOB-repo-usage

How to use the EOB repo

Code repositories are necessary to keep track of code versions and developments. Please, contribute to keep the repo "readable" and use it efficiently.

The repo is currently organized in a simple way as follows:

  • master must be always deployable; stable releases are tagged here as vX.Y.Z, where:
    • X is a main release (code structure changes or non-backwards compatible modifications);
    • Y are relevant changes (addition of key physics or significant change in some code portion)
    • Z are bugfixes, smaller features or improvements.
  • Branch names should start with the category name (e.g. bugfix, feature, test, ...), followed by the name of the main branch that they modify (GIOTTO or DALI), followed by a succinct description of the task they aim to accomplish. For instance:

    • feature/GIOTTO/new-fits-a6c3 is a good branch name
    • minor-changes is not an acceptable branch name
  • Feature branches should be used for code development. Several people might work on this branch and they must coordinate their work with emails, telecons, etc. These branches are merged into master when a stable release or a new feature is ready. This operation should be done together a main developer and coordinated. Feature branches might not be deleted for future reference. In this case, they will be moved to attic

  • The commit used for scientific publications should be tagged with the arXiv number. Scientific work should preferably use code on master but mature version on feature branches might also be used and tagged.

Please follow this simple set of rules:

  • I want to start a new project: start a new branch from master.
  • I want to contribute to some main development : contact us to coordinate work.
  • I want my own code version to hack : fork the repo.
  • I have a working version on a branch and want to share it: contact us to discuss where is better to merge it.

Important: master can only be modified via pull requests. When introducing a new feature, pull requests have to be reviewed by a main developer.

Thanks!

Updated