in gitflow all release branches are eventually
but why don't we just
in case of hotfix we can just
Let me try to put my understand here,
The git branch naming convention master, develop & release
were well defined and adopted to sync with universally. That doesn't means you need to follow, you can define how you wish and push to your costumers and users, Many organisation follows universal naming conventions to avoid unnecessary confusion.
In mercurial, Many follows branch naming default
instead of master
.
Definition in one line:
master : Ready Product (Public Available)
develop : Requirements/bugs/Improvements Implementation In Progress (Not recommended to use)
release : Preparing to `Ready Product` (Private or internal)
tag master : Stable Product with defined features.
For the main reason why master
branch is necessary ( develop
branch can not be replaced) in gitflow:
master
branch should be stable enough since it's used for product environment. develop
branches, all the developers can push their work directly even with no validations. That means, develop
branch may be "dirty", that will cause the production/living environment Collapsed. You are almost describing a release-flow branching model:
There is no final merge to a production branch - its not needed as the release branch is the same thing.
Once an old release branch has been superceeded by the next one it can be deleted if no longer required for audit purposes.
This is documented well by the VSTS team: https://docs.microsoft.com/en-gb/azure/devops/devops-at-microsoft/release-flow
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.