]> git.ipfire.org Git - thirdparty/git.git/commit - t/t7600-merge.sh
merge: refuse --commit with --squash
authorVishal Verma <vishal@stellar.sh>
Fri, 24 May 2019 18:36:17 +0000 (12:36 -0600)
committerJunio C Hamano <gitster@pobox.com>
Tue, 28 May 2019 18:53:11 +0000 (11:53 -0700)
commit1d14d0c9949c02260fe4f8b3a54a1b5c605823a2
treeddafb00ad119393fe27fd594541f757a0fb46270
parentaeb582a98374c094361cba1bd756dc6307432c42
merge: refuse --commit with --squash

Convert option_commit to tristate, representing the states of
'default/untouched', 'enabled-by-cli', 'disabled-by-cli'. With this in
place, check whether option_commit was enabled by cli when squashing a
merge. If so, error out, as this is not supported.

Previously, when --squash was supplied, 'option_commit' was silently
dropped. This could have been surprising to a user who tried to override
the no-commit behavior of squash using --commit explicitly.

Add a note to the --squash option for git-merge to clarify the
incompatibility, and add a test case to t7600-merge.sh

Cc: Junio C Hamano <gitster@pobox.com>
Cc: Rafael Ascensão <rafa.almas@gmail.com>
Cc: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Vishal Verma <vishal@stellar.sh>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/merge-options.txt
builtin/merge.c
t/t7600-merge.sh