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.
next prev 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
* 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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.