I have a develop branch with multiple commits. This branch shall be merged into the master branch. I also would like the master branches commit history to be as clean as possible, so I want to only have one entry for the merge. Thus I do the following:
git merge --squash develop
git commit
Now all changes from develop are in master, and there is only one commit on master. So far so good :-)
Now the problem is, that master and develop seem to be out of sync. I.e. if I make another commit to develop, I cannot merge that into master anymore. Lots of conflicts are popping up.
How exactly is the squash merge supposed to be done, so that both branches are in sync afterwards?