i-scream Git Repositories

The i-scream Git repositories contain the currently developed source code. All historic source code can be found in CVS.

All code available in the Git repositories is licensed under the GPL unless otherwise stated.


Our Git repositories are located on GitHub. You can find then all under this GitHub Organisation.


Git guidelines

We've chosen a set of guidelines to work by so that everybody is clear about how the Git repositories will be used. This should make life easier for developers and users. The aim is to keep things clear and simple without adding unnecessary overheads. We don't have need for anything as complex as git-flow.

  1. The master branch will always be buildable and should be usable. Development work does not happen here directly.
  2. New releases will be taken from the master branch and will be tagged there.
  3. The master branch will never have its history rewritten.
  4. Development work will be done on branches. These branches may only live for the period of the development work. Once the work is complete and tested it will be merged to master and the branch may be deleted.
  5. The history on development branches may be rewritten to tidy things up before merging. This probably won't happen often, but don't get upset if it does.
  6. If you want to submit changes it's best to do them against the master branch unless you're specifically working with a developer on an issue already.
  7. Gratuitous merge commits should be avoided, particularly when merging development branches to master. They don't offer much in the way of useful information and make operations like bisect harder. In particular, if you pull changes to your local repository and end up with a merge commit you should use rebase to get rid of it before pushing.