Branching definition
- Creating a logical or physical copy of code within a version control system so that this copy might be changed in isolation.
Branching purpose
- Branching also implies the ability to later merge or integrate changes back onto the Parent branch.
Branching practice
- Another method used in version control is branching, in which programs in development are copied for development in parallel versions :
- Branching is the practice of creating isolated copies of programs or objects in development to work in parallel versions, retaining the original and working on the branch, or making different changes to each.
- Each copy is considered a branch; the original program from which the branch is taken is referred to as the trunk, the baseline, the mainline, or the master.
Feature branching definition
- Feature Branching is an approach is to use a branch to work on a feature until it’s complete, then merge into the trunk/master Branch.
Feature branching practice
- Feature branches are often coupled with feature flags–”toggles” that enable or disable a feature within the product.
- That makes it easy to deploy code into master and control when the feature is activated, making it easy to initially deploy the code well before the feature is exposed to end-users.
Task Branching practice
- Every organization has a natural way to break down work in individual tasks inside of an issue tracker, like Jira Software.
- Issues then becomes the team’s central point of contact for that piece of work.
- Task branching, also known as issue branching, directly connects those issues with the source code.
- Each issue is implemented on its own branch with the issue key included in the branch name.
Version Control, branching and Merging and Standards
More informations for the Scrum PSD certification here.