git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Kaartic Sivaraam <kaarticsivaraam91196@gmail.com>
Cc: git@vger.kernel.org, martin.agren@gmail.com
Subject: Re: [PATCH v3 1/2 / RFC] builtin/branch: stop supporting the use of --set-upstream option
Date: Mon, 14 Aug 2017 13:19:55 -0700	[thread overview]
Message-ID: <xmqqy3qluck4.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <20170814085442.31174-1-kaarticsivaraam91196@gmail.com> (Kaartic Sivaraam's message of "Mon, 14 Aug 2017 14:24:42 +0530")

Kaartic Sivaraam <kaarticsivaraam91196@gmail.com> writes:

> The '--set-upstream' option of branch was deprecated in,
>
>     b347d06bf branch: deprecate --set-upstream and show help if we
>     detect possible mistaken use (Thu, 30 Aug 2012 19:23:13 +0200)
>
> It was deprecated for the reasons specified in the commit message of the
> referenced commit.

I wonder if these two lines add any value here.  Those who know the
reason would not be helped, and those who don't know have to view
"git show b347d06bf" anyway.

> Make 'branch' die with an appropraite error message when the '--set-upstream'
> option is used.

OK.

> Note that there's a reason behind "dying with an error message" instead of
> "not accepting the option". 'git branch' would *accept* '--set-upstream'
> even after it's removal as a consequence of,
>
>         Unique prefix can be abbrievated in option names
>
>                           AND
>
>     '--set-upstream' is a unique prefix of '--set-upstream-to'
>        (when the '--set-upstream' option has been removed)
>
> In order to smooth the transition for users and to avoid them being affected
> by the "prefix issue" it was decided to make branch die when seeing the
> '--set-upstream' flag for a few years and let the users know that it would be
> removed some time in the future.

I somehow think the above wastes bits a bit too much.  Wouldn't it
be sufficient to say

    In order to prevent "--set-upstream" on a command line from
    being taken as an abbreviated form of "--set-upstream-to",
    explicitly catch "--set-upstream" option and die, instead of
    just removing it from the list of options.

>     $ git branch --set-upstream origin/master
>     The --set-upstream flag is deprecated and will be removed. Consider using --track or --set-upstream-to
>     Branch origin/master set up to track local branch master.

> After,
>
>     $ git branch
>     * master
>
>     $ git branch --set-upstream origin/master
>     fatal: the '--set-upstream' flag is no longer supported and will be removed. Consider using '--track' or '--set-upstream-to'

Because from the end-user's point of view, it has already been
removed, I'd phrase it more like

	The --set-upstream option has been removed.  Use --track or ...

and make sure we do not list "--set-upstream" in the list of
supported options in

	git branch -h

output.

>  A query,
>
>     I see the following code in the code path a little above the die statement
>     added in this change,
>
>             if (!strcmp(argv[0], "HEAD"))
>     		    	die(_("it does not make sense to create 'HEAD' manually"));
>
>     It does seem to be doing quite a nice job of avoiding an ambiguity that could
>     have bad consequences but it's still possible to create a branch named 'HEAD'
>     using the '-b' option of 'checkout'. Should 'git checkout -b HEAD' actually
>     fail(it does not currently) for the same reason 'git branch HEAD' fails?
>
>     My guess is that people would use 'git checkout -b <new_branch_name> <starting_point>'
>     more than it's 'git branch' counterpart.    

Thanks for noticing.  I offhand see no reason not to do what you
suggest above.

> -		OPT_SET_INT( 0, "set-upstream",  &track, N_("change upstream info"),
> +		OPT_SET_INT( 0, "set-upstream",  &track, N_("no longer supported"),
>  			BRANCH_TRACK_OVERRIDE),

Here we would want to use something like

	{ OPTION_SET_INT, 0, "set-upstream", &track, NULL, N_("do not use"),
	  PARSE_OPT_NOARG | PARSE_OPT_HIDDEN, NULL, BRANCH_TRACK_OVERRIDE },

in order to hide the option from "git branch -h" output.

All review comments from Martin were also good ones, and I won't
repeat them here.

Thanks.



  parent reply	other threads:[~2017-08-14 20:20 UTC|newest]

Thread overview: 127+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-24 15:41 [PATCH/RFC] branch: warn user about non-existent branch Kaartic Sivaraam
2017-07-24 19:16 ` Change in output as a result of patch Kaartic Sivaraam
2017-07-24 21:25   ` Junio C Hamano
2017-07-25 18:54     ` Kaartic Sivaraam
2017-07-26 22:29       ` Junio C Hamano
2017-08-07 14:39         ` Can the '--set-upstream' option of branch be removed ? Kaartic Sivaraam
2017-08-07 14:39           ` [PATCH 1/2 / RFC] builtin/branch: remove the deprecated '--set-upstream' option Kaartic Sivaraam
2017-08-07 14:39           ` [PATCH 2/2 / RFC] branch: quote branch/ref names to improve readability Kaartic Sivaraam
2017-08-07 20:59           ` Can the '--set-upstream' option of branch be removed ? Junio C Hamano
2017-08-08 13:00             ` Kaartic Sivaraam
2017-08-08 16:47               ` Junio C Hamano
2017-08-08 17:11             ` [PATCH v2 1/2 / RFC] builtin/branch: stop supporting the use of --set-upstream option Kaartic Sivaraam
2017-08-08 17:11               ` [PATCH v2 2/2 / RFC] branch: quote branch/ref names to improve readability Kaartic Sivaraam
2017-08-08 18:55                 ` Stefan Beller
2017-08-08 19:43                   ` Junio C Hamano
2017-08-08 20:08                     ` Stefan Beller
2017-08-08 18:33               ` [PATCH v2 1/2 / RFC] builtin/branch: stop supporting the use of --set-upstream option Martin Ågren
2017-08-14  8:50                 ` Kaartic Sivaraam
2017-08-14  8:54               ` [PATCH v3 " Kaartic Sivaraam
2017-08-14 19:14                 ` Martin Ågren
2017-08-15 10:23                   ` Kaartic Sivaraam
2017-08-14 20:19                 ` Junio C Hamano [this message]
2017-08-15 10:56                   ` Kaartic Sivaraam
2017-08-15 18:58                     ` Junio C Hamano
2017-08-16 18:13                       ` Kaartic Sivaraam
2017-08-16 19:09                         ` Junio C Hamano
2017-08-17  2:04                           ` Kaartic Sivaraam
2017-09-12  6:49                             ` Junio C Hamano
2017-09-12  7:00                               ` Kaartic Sivaraam
2017-09-12 10:31                               ` [PATCH/RFC] branch: strictly don't allow a branch with name 'HEAD' Kaartic Sivaraam
2017-08-17  2:54                   ` [PATCH v4 1/3] test: cleanup cruft of a test Kaartic Sivaraam
2017-08-17  2:54                     ` [PATCH v4 2/3] builtin/branch: stop supporting the use of --set-upstream option Kaartic Sivaraam
2017-08-17 18:21                       ` Martin Ågren
2017-08-17 19:55                         ` Junio C Hamano
2017-08-18  2:41                           ` Kaartic Sivaraam
2017-08-18 16:30                             ` Junio C Hamano
2017-08-18 16:57                               ` Martin Ågren
2017-08-17 19:58                       ` Junio C Hamano
2017-08-18  2:39                         ` Kaartic Sivaraam
2017-08-18 16:31                           ` Junio C Hamano
2017-08-17  2:54                     ` [PATCH v4 3/3] branch: quote branch/ref names to improve readability Kaartic Sivaraam
2017-08-07 14:49     ` Change in output as a result of patch Kaartic Sivaraam
2017-09-19  7:15     ` [RFC PATCH 0/5] branch: improve error messages of branch renaming Kaartic Sivaraam
2017-09-19  7:15       ` [RFC PATCH 1/5] builtin/checkout: avoid usage of '!!' Kaartic Sivaraam
2017-09-20  4:00         ` Junio C Hamano
2017-09-20  8:09           ` Kaartic Sivaraam
2017-09-20 11:26             ` Kaartic Sivaraam
2017-09-21  1:31               ` Junio C Hamano
2017-09-23 12:17                 ` Kaartic Sivaraam
2017-09-19  7:15       ` [RFC PATCH 2/5] branch: document the usage of certain parameters Kaartic Sivaraam
2017-09-20  4:12         ` Junio C Hamano
2017-09-20  9:01           ` Kaartic Sivaraam
2017-09-21  1:33             ` Junio C Hamano
2017-09-19  7:15       ` [RFC PATCH 3/5] branch: cleanup branch name validation Kaartic Sivaraam
2017-09-20  4:20         ` Junio C Hamano
2017-09-20 12:04           ` Kaartic Sivaraam
2017-09-21  1:37             ` Junio C Hamano
2017-09-23 12:52               ` Kaartic Sivaraam
2017-09-20 14:52           ` Kaartic Sivaraam
2017-09-19  7:15       ` [RFC PATCH 4/5] branch: introduce dont_fail parameter for update validation Kaartic Sivaraam
2017-09-19  7:15       ` [RFC PATCH 5/5] builtin/branch: give more useful error messages when renaming Kaartic Sivaraam
2017-09-19  8:41         ` [RFC SAMPLE] " Kaartic Sivaraam
2017-09-19  9:33           ` Kaartic Sivaraam
2017-09-20 20:57         ` [RFC PATCH 5/5] " Stefan Beller
2017-09-23 10:50           ` Kaartic Sivaraam
2017-09-25  8:20       ` [RFC PATCH v2 0/5] Give more useful error messages when renaming a branch Kaartic Sivaraam
2017-09-25  8:20         ` [RFC PATCH v2 1/5] branch: improve documentation and naming of certain parameters Kaartic Sivaraam
2017-10-20 21:33           ` Stefan Beller
2017-10-20 21:51             ` Eric Sunshine
2017-10-21  2:32               ` Kaartic Sivaraam
2017-10-21  2:31             ` Kaartic Sivaraam
2017-09-25  8:20         ` [RFC PATCH v2 2/5] branch: re-order function arguments to group related arguments Kaartic Sivaraam
2017-10-20 21:50           ` Stefan Beller
2017-10-21  2:56             ` Kaartic Sivaraam
2017-10-23 19:32               ` Stefan Beller
2017-09-25  8:20         ` [RFC PATCH v2 3/5] branch: cleanup branch name validation Kaartic Sivaraam
2017-09-25  8:20         ` [RFC PATCH v2 4/5] branch: introduce dont_fail parameter for create validation Kaartic Sivaraam
2017-09-25  8:20         ` [RFC PATCH v2 5/5] builtin/branch: give more useful error messages when renaming Kaartic Sivaraam
2017-10-23 19:44           ` Stefan Beller
2017-10-24  3:37             ` Kaartic Sivaraam
2017-10-20  7:09         ` [RFC PATCH v2 0/5] Give more useful error messages when renaming a branch Kaartic Sivaraam
2017-10-20 18:58           ` Stefan Beller
2017-11-02  6:54         ` [RFC PATCH v3 0/4] give more useful error messages while renaming branch Kaartic Sivaraam
2017-11-02  6:54           ` [RFC PATCH v3 1/4] branch: improve documentation and naming of 'create_branch()' Kaartic Sivaraam
2017-11-02  6:54           ` [RFC PATCH v3 2/4] branch: re-order function arguments to group related arguments Kaartic Sivaraam
2017-11-06  2:06             ` Junio C Hamano
2017-11-12 13:27               ` Kaartic Sivaraam
2017-11-13  2:32                 ` Junio C Hamano
2017-11-13  3:06                   ` Kaartic Sivaraam
2017-11-02  6:54           ` [RFC PATCH v3 3/4] branch: introduce dont_fail parameter for branchname validation Kaartic Sivaraam
2017-11-02  8:39             ` Kaartic Sivaraam
2017-11-02 18:42               ` Stefan Beller
2017-11-03  2:58                 ` Kaartic Sivaraam
2017-11-06  2:24             ` Junio C Hamano
2017-11-12 13:33               ` Kaartic Sivaraam
2017-11-02  6:54           ` [RFC PATCH v3 4/4] builtin/branch: give more useful error messages when renaming Kaartic Sivaraam
2017-11-02 14:21             ` Eric Sunshine
2017-11-03  2:41               ` Kaartic Sivaraam
2017-11-06  2:30             ` Junio C Hamano
2017-11-12 14:05               ` Kaartic Sivaraam
2017-11-12 18:23             ` Kevin Daudt
2017-11-13  2:31               ` Kaartic Sivaraam
2017-11-13 11:30                 ` Kevin Daudt
2017-11-14  5:25                   ` Kaartic Sivaraam
2017-11-18 17:26           ` [PATCH 0/4] cleanups surrounding branch Kaartic Sivaraam
2017-11-18 17:26             ` [PATCH 1/4] branch: improve documentation and naming of create_branch() parameters Kaartic Sivaraam
2017-11-18 17:26             ` [PATCH 2/4] branch: group related arguments of create_branch() Kaartic Sivaraam
2017-11-18 17:26             ` [PATCH 3/4] branch: update warning message shown when copying a misnamed branch Kaartic Sivaraam
2017-11-18 17:26             ` [PATCH 4/4] builtin/branch: strip refs/heads/ using skip_prefix Kaartic Sivaraam
2017-11-19  1:04               ` Eric Sunshine
2017-11-19 17:21                 ` Kaartic Sivaraam
2017-11-19 18:06                   ` Eric Sunshine
2017-11-29  3:46               ` [PATCH v4 " Kaartic Sivaraam
2017-12-01  5:59                 ` [PATCH v5 " Kaartic Sivaraam
2017-12-04  4:29                   ` SZEDER Gábor
2017-12-07 23:00                     ` Junio C Hamano
2017-12-07 23:14                       ` Junio C Hamano
2017-12-08 17:39                         ` Kaartic Sivaraam
2018-03-10 15:54           ` [PATCH v4 0/3] give more useful error messages while renaming branch (reboot) Kaartic Sivaraam
2018-03-10 15:54             ` [PATCH v4 1/3] branch: introduce dont_fail parameter for branchname validation Kaartic Sivaraam
2018-03-15 20:27               ` Junio C Hamano
2018-03-16 18:12                 ` Kaartic Sivaraam
2018-03-10 15:54             ` [PATCH v4 2/3] builtin/branch: give more useful error messages when renaming Kaartic Sivaraam
2018-03-15 20:33               ` Junio C Hamano
2018-03-24 17:09                 ` Kaartic Sivaraam
2018-03-10 15:54             ` [PATCH v4 3/3] t/t3200: fix a typo in a test description Kaartic Sivaraam
2018-03-15 20:41               ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqy3qluck4.fsf@gitster.mtv.corp.google.com \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=kaarticsivaraam91196@gmail.com \
    --cc=martin.agren@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).