On Thu, Mar 26, 2015 at 12:58 AM, Junio C Hamano <gits...@pobox.com> wrote:
> 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 <gits...@pobox.com>
> ---
> diff --git a/builtin/merge.c b/builtin/merge.c
> index 3b0f8f9..0795358 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.");

To be a bit more helpful, perhaps point the user at "git merge -m
<msg> <commit>..." as the recommended replacement?

>                 strbuf_addstr(&merge_msg, argv[0]);
>                 head_arg = argv[1];
>                 argv += 2;
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to