Is it possible / desirable to have a "master", "test" and "develop" branch when using git-flow?
I am currently working on a project that we are in the process of switching to Git. We are trying to figure out which workflow to use. We are very interested in git-flow but have a problem.
As I understand git-flow, developers create branches
, as soon as they are executed with a specific branch
, the code is merged into
. When we want to release for life,
then it merges into
. In our case, it
will be what is currently used in our Dev environment , and
will be what is currently Live . This is good and good.
The point is that we have another environment that we need to deploy to Live , i.e. Test . We want to have a branch
that will always represent what is currently being used for Test .
This is how we assume it works:
- Developers work in branches
that are merged into
, which are deployed to Dev .
- When we are ready to progress to Test , it is
and carried over to Test .
- After everyone is signed up for the Test , we merge
and take Live .
- Is this possible with git-flow, if so how?
- Should we do this?
- How else can this be achieved?
source to share
git-flow has the concept of branches
that you can use for this purpose.
The point is that in git-flow, it
doesn't just merge into
. First you create a branch
where you prepare for a live version, check it out and fix patches at the last minute before you merge it on
, that is, push it live.
When a is
closed, it is merged into again
, so you will have all the fixes tested in your main development branch.
Disable support branches for preparing a new release. They allow last-minute point and cross ts. They also allow minor bug fixes and prepare release metadata (version number, build dates, etc.).
source to share