PR final steps (to squash or not to squash)

Lawrence Velázquez larryv at macports.org
Tue Dec 6 03:35:45 CET 2016


> On Dec 5, 2016, at 8:57 PM, Zero King <l2dy at icloud.com> wrote:
> 
>> From what I understand, what we'd really like for that case is
>> a "squash, rebase and merge" option. Unless we've misunderstood what
>> "squash and merge" does and it doesn't actually create a merge
>> commit?
> 
> No, it doesn't. See https://github.com/blog/2141-squash-your-commits.

Squash merging is also described in git-merge(1):

	--squash, --no-squash
	    Produce the working tree and index state as if a real merge
	    happened (except for the merge information), but do not
	    actually make a commit, move the HEAD, or record
	    $GIT_DIR/MERGE_HEAD (to cause the next git commit command to
	    create a merge commit). This allows you to create a single
	    commit on top of the current branch whose effect is the same
	    as merging another branch (or more in case of an octopus).
	
	    With --no-squash perform the merge and commit the result.
	    This option can be used to override --squash.

The reason we are leery of "squash and merge" is not nonlinearity but
that it would be the default action on the GitHub website and could make
it too easy to mash a whole PR into one ungainly commit.

vq


More information about the macports-dev mailing list