The different branching strategies are as follows:
1.Feature branching: A feature branch model tracks all of the changes for a particular feature inside of a branch. When the feature is fully tested and validated by automated tests, the branch is then merged into master.
2.Task branching: In this branching, each task is implemented on its own branch with the task key included in the branch name. It is easy to see which code implements which task, just look for the task key in the branch name.
3.Release branching: Once the development branch has acquired enough features for a release, you can clone that branch to form a Release branch.