A branch that is spawned to contain the work of a specific task in contrast with long-lived branch. It will be removed when the task ends. It can be a:
The history of this branch may change at will as it is the sandbox that the developer use to eventually submit a well crafted merge request. When several people work on this, they are few (in general 2 at most) and are constantly in sync about what is done in the branch.
If at some point one hesitate changing the history to “be nice” with another collaborator, chances are they are starting to loose the advantage of a short-lived branch and should consider submitting a merge request and move on.
Notes linking here
- long-lived branch
- pragmatic git workflow (blog)
- sonar new code definition is not adapted to the pragmatic git workflow
- the method I suggest (blog)