Three cases for creating branch lines


on November 3, 2015

When you develop in Mendix as a team; you are bound to overlap occasionally on parts of the application. Hence as you are developing, make sure that your entire team is on the same version (ideally, the latest version). But even so, you’ll sometimes need to branch off from the main line of development. Branch lines are copies of any revision and you can branch from the main line for a variety of reasons. The main reasons to create branches could be but not limited to the following case scenarios.

Scenario 1

On no! A critical bug has been found in production and you need to resolve it as soon as possible. The solution is to create a branch from the tagged version that is in production, resolve the issue, create another tagged version and deploy into production.

Below is a visual representation of what the development line can look like.

branching-1

Scenario 2

A new Business Modeler version has been released and you either want or need to upgrade to it. The best way to move forward is to create a branch line from the current working copy. In the branch line you can test the latest version and then merge back into the main line along with the upgrade when you are ready.

branching-2

Scenario 3

As a developer you need to work on an integration or on a feature release and don’t want to commit your changes until you are ready to integrate with the rest of the team. The solution again is to create a branch line and merge your changes back into the main line whenever you are ready.

Conclusion

Mendix makes it easy and straightforward to manage your team and know exactly what changes have been made. The platform provides the flexibility to maintain multiple development lines. The goal is to manage the project as smoothly as possible while encouraging a collaborative working environment. And don’t forget to commit every day and as often as possible!

For other links and resources on details, check out the following guidelines and how to docs!

https://world.mendix.com/display/howto50/Using+Team+Server+-+Version+Control

https://world.mendix.com/display/refguide5/Version+Control+Scenarios

https://world.mendix.com/display/refguide5/Version+Control+Concepts