Best practices for merging?

Tuncer Ayaz tuncer.ayaz at gmail.com
Sun Jan 31 19:47:29 UTC 2016


On 31 January 2016 at 19:24, Joachim Breitner wrote:
> Hi,
>
> Am Sonntag, den 31.01.2016, 13:10 -0500 schrieb Geoffrey Mainland:
> > My usual git workflow is to work on a feature branch, get a nice
> > clean set of patches, each of which implements a discrete bit of
> > functionality, rebase onto master, and then merge with an empty
> > merge commit, i..e, *not* fast-forward.
>
> if you want to go through the trouble, you are certainly welcome to do
> so. The fact that phab squashes commits into one is more an artifact
> of its VCS-agnosticity rather than a deliberate decision by us.
>
> When I want a git history (or just my nice git commit messages)
> preserved, I create a phab differetian revision as usual, but then
> manually amend the git commit to contain the line Differential
> Revision: https://phabricator.haskell.org/Dnnnn and push, once the DR
> has been accepted, by normal git means. I just have to remember to
> indicate in the DR (e.g. in the summary) that I want to do it this
> way.

FWIW, I agree with Geoffrey, and in addition to the benefits he listed,
I appreciate that committing "kernel.org-style" improves bisect'ability.
I used to dislike merge commits myself until I realized the usefulness
of finding merge points in the history. So, I don't understand how
collapsing everything into one big commit can make any sense.

Is it really impossible to tell phabricator (or arcanist) to preserve
a carefully prepared patch set, and if so, why does it insist on that?


More information about the ghc-devs mailing list