summaryrefslogtreecommitdiff
path: root/builtin/merge.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2015-03-25 21:58:45 -0700
committerJunio C Hamano <gitster@pobox.com>2015-03-26 10:23:14 -0700
commitbcc3563436526df46cacf2cd627fef5b013eaf03 (patch)
tree7cf2a5103f62f0eb81f21077927a290e49f205e0 /builtin/merge.c
parentbca181109d6f054d525c71a84963bbdc1f0c40bf (diff)
downloadgit-jc/merge-deprecate-old-syntax.tar.gz
merge: deprecate 'git merge <message> HEAD <commit>' syntaxjc/merge-deprecate-old-syntax
We had this in "git merge" manual for eternity: 'git merge' <msg> HEAD <commit>... [This] syntax (<msg> `HEAD` <commit>...) is supported for historical reasons. Do not use it from the command line or in new scripts. It is the same as `git merge -m <msg> <commit>...`. I wanted to see how much damage we would incur to people by checking what the damage to _our_ system, including the test scripts, if we dropped the support for the syntax. The last time I tried this, I thought that replacing the use of this syntax in "git pull" with its obvious and trivial rewrite 'git merge -m <msg> <commit>' broke some output, and that is the primary reason why I stayed away from trying this again, but it no longer seems to be the case with today's code for some reason. There are quite a few fallouts in the test scripts, and it turns out that "git cvsimport" also uses this old syntax to record a merge. Judging from this result, I would not be surprised if dropping the support of the old syntax broke scripts people have written and been relying on for the past ten years. But at least we can start the deprecation process by throwing a warning message when the syntax is used. With luck, we might be able to drop the support in a few years. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/merge.c')
-rw-r--r--builtin/merge.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/builtin/merge.c b/builtin/merge.c
index 3b0f8f96d4..07953585a1 100644
--- a/builtin/merge.c
+++ b/builtin/merge.c
@@ -1182,6 +1182,7 @@ int cmd_merge(int argc, const char **argv, const char *prefix)
if (!have_message && head_commit &&
is_old_style_invocation(argc, argv, head_commit->object.sha1)) {
+ warning("old-style 'git merge <msg> HEAD <commit>' is deprecated.");
strbuf_addstr(&merge_msg, argv[0]);
head_arg = argv[1];
argv += 2;