From: Kaartic Sivaraam <kaartic.sivaraam@gmail.com>
To: Git mailing list <git@vger.kernel.org>
Cc: Junio C Hamano <gitster@pobox.com>,
Eric Sunshine <sunshine@sunshineco.com>
Subject: [PATCH v4 0/3] give more useful error messages while renaming branch (reboot)
Date: Sat, 10 Mar 2018 21:24:13 +0530 [thread overview]
Message-ID: <20180310155416.21802-1-kaartic.sivaraam@gmail.com> (raw)
In-Reply-To: <20171102065407.25404-1-kaartic.sivaraam@gmail.com>
It's been a long time since the v3 of the patch. So, it's worth restating
the reason behind this patch.
From v1 of this patch,
In builtin/branch, the error messages weren't handled directly by the branch
renaming function and was left to the other function. Though this avoids
redundancy this gave unclear error messages in some cases. So, make
builtin/branch give more useful error messages.
Changes since v3:
- Handled more error related to old branch name.
- Incorporated changes suggested in v3 which include using ';' as a sentence
connector instead 'and'.
- Error messages use the interpreted branch names (without the (refs/heads/ part).
The unrelated cleanup patches which were in the previous versions have
since been submitted as a separate series and have been merged into
the codebase.
The first two patches are related to the topic of this patch. The 3rd one
is a little typo fix that I noticed on the way.
This patch was based off 'master' and has been rebased to incorporate
the new changes to 'master'. So, it generally should apply cleanly on
'master'. Let me know if it doesn't.
The sample input/output cases for this patch are as follows,
$ git branch
* master
foo
bar
Before patch,
# Case 1: Trying to rename non-existent branch
$ git branch -m hypothet no_such_branch
error: refname refs/heads/hypothet not found
fatal: Branch rename failed
# Case 2: Trying to rename non-existent branch to an existing one
$ git branch -m hypothet master
fatal: A branch named 'master' already exists.
# Case 3: Trying to force update current branch
$ git branch -M foo master
fatal: Cannot force update the current branch.
# Case 4: Trying to force rename an in-existent branch with an invalid name
$ git branch -M hypothet ?123
fatal: '?123' is not a valid branch name.
After patch,
# Case 1: Trying to rename non-existent branch
$ git branch -m hypothet no_such_branch
fatal: branch 'hypothet' doesn't exist
# Case 2: Trying to rename non-existent branch to an existing one
$ git branch -m hypothet master
fatal: branch 'hypothet' doesn't exist; branch 'master' already exists
# Case 3: Trying to force update current branch
$ git branch -M foo master
fatal: cannot force update the current branch
# Case 4: Trying to force rename an in-existent branch with an invalid name
$ git branch -M hypothet ?123
fatal: branch 'hypothet' doesn't exist; new branch name '?123' is invalid
Note: Thanks to the strbuf API that made it possible to easily
construct the composite error message strings!
Kaartic Sivaraam (3):
branch: introduce dont_fail parameter for branchname validation
builtin/branch: give more useful error messages when renaming
t/t3200: fix a typo in a test description
branch.c | 59 +++++++++++++-----------
branch.h | 61 ++++++++++++++++++++-----
builtin/branch.c | 111 ++++++++++++++++++++++++++++++++++++++-------
builtin/checkout.c | 5 +-
t/t3200-branch.sh | 2 +-
5 files changed, 181 insertions(+), 57 deletions(-)
--
2.16.1.291.g4437f3f13
next prev parent reply other threads:[~2018-03-10 15:54 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
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 ` Kaartic Sivaraam [this message]
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=20180310155416.21802-1-kaartic.sivaraam@gmail.com \
--to=kaartic.sivaraam@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=sunshine@sunshineco.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).