Am 11.01.19 um 03:40 schrieb Stefan Seefeld via Boost:
Hi Robert,
On 2019-01-10 9:20 p.m., Robert Ramey via Boost wrote:
I'm looking to merge my develop branch into the master so that they will be in sync. I'm thinking that this the changed in develop should be squashed so that the master branch doesn't included all the the intermediate changes made during the develop phase. Is there any boost rule/practice/guidence regarding this?. Ideally, I'd like to see the master have only one set of consolidated changes for each release. But I'm not the person who decides these things or does the work. Any insight by other parties would be appreciated.
I don't think there is (and should be) a Boost-global rule on how to handle this, though some guidelines might be useful.
(There tend to be different camps of people with different preferences, such as the ones preferring clean branches who tend to use `git rebase` a lot versus those who frown upon `rebase` (and history rewrites) as they insist on clear audit trails, especially if code reviews are involved. So rather than opening the door for yet another area of endless debate, I'd simply recognize such styles, and document pros and cons.
As to guidelines, there are a few useful documents online, such as https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/cont..., which I find quite helpful. Collecting such notes on our wiki might be useful.
I lately found this very good (and long), educational blog-entry [1] which explains when and how to use `git merge` and `git rebase`. I highly recommend everyone using Git reads it and adopts it. HTH, Deniz [1] https://medium.com/@porteneuve/getting-solid-at-git-rebase-vs-merge-4fa1a48c...