Contents
What are the advantages of trunk-based development?
One key benefit of the trunk-based approach is that it reduces the complexity of merging events and keeps code current by having fewer development lines and by doing small and frequent merges. In this approach, developers make changes to long-lived branches.
What is trunk in version control?
In the field of software development, trunk refers to the unnamed branch (version) of a file tree under revision control. The trunk is usually meant to be the base of a project on which development progresses.
What is the difference between trunk and branch in SVN?
– A trunk in SVN is main development area, where major development happens. – A branch in SVN is sub development area where parallel development on different functionalities happens. After completion of a functionality, a branch is usually merged back into trunk.
What is the consequence of working in isolation on long-lived code branches?
By working on a long-running branch, changes become more and more isolated from the other branches, including trunk (or master). CI builds can still exist against that branch, but they’re only integrating changes within that branch, not the code that the other teams are committing.
What are the rules of trunk based development?
A key facilitating rule is that Trunk-Based Development teams exclusively either release directly from the trunk – see release from trunk, or they make a branch from the trunk specifically for the actual release. See Branch for release . Teams with a higher release cadence do the former, and those with a lower release cadence do the latter.
Is the trunk the same as the head?
The trunk is also sometimes loosely referred to as HEAD, but properly head refers not to a branch, but to the most recent commit on a given branch, and both the trunk and each named branch has its own head.
Do you need a build server for trunk based development?
If you have more than a couple of developers on the project, you are going to need to hook up a build server to verify that their commits have not broken the build after they land in the trunk, and also when they are ready to be merged back into the trunk from a short-lived feature branch.
Which is the most unstable version of the trunk?
The trunk is usually meant to be the base of a project on which development progresses. If developers are working exclusively on the trunk, it always contains the latest cutting-edge version of the project, but therefore may also be the most unstable version.