Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Repository

How to structure the repositories is architectural matter. Projects within a repository have their own lifecycle. Hence, changes in one repository should not affect changes in another repository, unless of course they are connected (e.g. library projects or a web service connection). To learn more about functional architectures and decoupling applications read A maintainable and agile architecture.

...

A branching strategy is a plan on how to use branches within branches within the repositories. There is no right branching strategy, but there will be a branching strategy that fits your Blueriq development and the technical environment best. It is recommended to give it some good thought and choose a strategy together and stick to it. Evaluate the branching strategy and adjust if necessary.

One A common branching strategy is feature is: 

  • Feature branching in combination with a stable trunk as base. This trunk contains a releasable version of the project in which no changes are made. This way, it is ensured that there always is a releasable version of the project. To develop a new feature or a small change, a complete copy of the trunk is made. This copy is called a branch. To ensure that developers don’t interfere with each others work, every major change is done in a separate branch. For example, branch 1 is for developing the 2 small new features X and Y, branch 2 is for bug fixing. Policies have to be put in place to make sure that changes are made in the branch intended for that specific change. This way, developers have their own working copy of the project in which they can make their changes.

Other branching strategies are for instance:

...

Which (Blueriq) branching strategy fits you your application depends on your team, projectprojects, DTAP street and/or technical environment. There are some elements that might help choosing the right strategy for your project:

...

Tips & tricks for branching in Blueriq:

...

(tick) Keep feature branches short-lived. This will prevent conflicts when merging back to the trunk.

...

(tick) Use tags to mark releases or milestones. This will make it easy to create a new branch, e.g. for creating a hotfix branch or to be able to view an old revision without the need to keep old branches.

...

(tick) Choose a branching strategy and stick to it across repository's and teams. Evaluate and adjust if necessary.

...

(tick) Keep the amount of active branches small to prevent conflicts and to remain overview. 

...

(tick) Do not keep many old branches; rather tag your trunk consequently to be able to create a branch at some revision when necessary.