Skip to content
This repository has been archived by the owner on Jun 19, 2023. It is now read-only.

Surprising (unwanted) behavior with AVH git flow release finish #305

Closed
slawo opened this issue Dec 22, 2016 · 5 comments
Closed

Surprising (unwanted) behavior with AVH git flow release finish #305

slawo opened this issue Dec 22, 2016 · 5 comments

Comments

@slawo
Copy link

slawo commented Dec 22, 2016

Why does git flow release finish <release> merge master back to develop?

This is contrary to the original git flow implementation and it seems to be enabled by default.

It there a way to avoid bringing master back to develop when we finish a release or anything else?

@maldag
Copy link

maldag commented Dec 22, 2016

I guess the idea is to make sure develop is up to date with master.

@slawo
Copy link
Author

slawo commented Dec 22, 2016

@maldag, in the original gitflow master is moved into develop only when develop is created. Auto magically merging master into develop was not the intended behavior in the original gitflow.

Master is supposed to receive changes from release and from hotfix only.
Develop is supposed to receive changes from feature, release and hotfix. Some people or teams will add more commits to develop, but this is up to them. But outside of the creation of develop there is no case where commits to master are supposed to be moved to develop.
Commits in master that are not made in develop are supposed to be specific to the master branch. It then becomes the responsibility of the team to manage these changes. So it should never happen automatically.

@slawo
Copy link
Author

slawo commented Dec 22, 2016

A very common and simple example is this:

You create a project.
In the develop branch you add a readme with some shields.
Once you release the project in the master branch you will changes the shields to reference the master branch.
If you never change these again you will have real information about the develop branch in the develop branch, and you will have the information about the current status of the published master branch in the master branch.
If you merge changes from master back to develop you loose the current status of the develop branch in the readme when you look at this branch. And while this is the branch your team wants to see, merging master back to develop will mess things up.

Same thing with more specific info, configuration or test files that are specific for the master branch.

@vukanac
Copy link

vukanac commented Feb 25, 2017

Maybe this created confusion:

Finally, the changes made on the release branch need to be merged back into develop, so that future releases also contain these bug fixes.

If we are looking the same picture, I see an arrow from master to develop.

hotfix example

Maybe your point of view contains valid requests, for badges etc.... but maybe additional options in git flow.

git flow release finish -b

Help:

-b, --[no]nobackmerge          Don't back-merge master, or tag if applicable, in develop

Another point of view is this comment.

@petervanderdoes
Copy link
Owner

petervanderdoes commented Mar 31, 2017

A long time ago, 2010, this was a discussion at nvie. It has to do with git describe See nvie/gitflow#49

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants