we got a pretty standard git workflow, but i am annoyed by one thing: The master is ahead of development because every deployment we create a merge-commit from dev to master.
At first our workflow:
master branch
- always clean and available for a deploymentdevelopment branch
- Collects new features / bug fixes if those are reviewed and approvedfeature branch
- a new branch that only has needed changes for one feature (it is branched offdevelopment branch
)
Every successfull pull request (feature > development) creates a merge-commit, which is fine.
But every deployment (development > master) also creates a merge-commit which only exists in the master. So what happens is that after 20 deployments the master branch is 20 commits ahead of development branch.
How do you deal with that behaviour? Do you merge master > dev from time to time (which actually does nothing but creating a useless merge-commit)?
rebasing development-branch seems not to be an option because then every developer would lose the tracked remote branch.