surround %s with quotes when failed to lookup commit
cover surround %s with quotes when failed to lookup commit
From: Teng Long <[email protected]>
When lookup commit fails, wrap quotes around %s format specifier.
Do we have to put a "<topic>": or "<filename>:" before the commit title, such as this patch, which modifies two different features, how should we name it appropriately.
Thanks.
Teng Long (1):
surround %s with quotes when failed to lookup commit
builtin/commit.c | 6 +++--- builtin/merge-tree.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-)
Signature · 1 line
2.41.0.rc2
PATCH 1/1 surround %s with quotes when failed to lookup commit
From: Teng Long <[email protected]>
The output maybe become confused to recognize if the user accidentally mistook an extra opening space, like:
$git commit --fixup=" 6d6360b67e99c2fd82d64619c971fdede98ee74b"
fatal: could not lookup commit 6d6360b67e99c2fd82d64619c971fdede98ee74b
and it will be better if we surround the %s specifier with single quotes.
--- builtin/commit.c | 6 +++--- builtin/merge-tree.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-)
builtin/commit.c +3 -3
@@ -763,7 +763,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix,struct commit *c; c =lookup_commit_reference_by_name (squash_message);if (!c) -die (_ ("could not lookup commit %s" ), squash_message); +die (_ ("could not lookup commit '%s'" ), squash_message); ctx.output_encoding =get_commit_output_encoding (); repo_format_commit_message(the_repository, c, "squash! %s\n\n", &sb,
@@ -798,7 +798,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix,char *fmt; commit =lookup_commit_reference_by_name (fixup_commit);if (!commit) -die (_ ("could not lookup commit %s" ), fixup_commit); +die (_ ("could not lookup commit '%s'" ), fixup_commit); ctx.output_encoding =get_commit_output_encoding (); fmt =xstrfmt ("%s! %%s\n\n" , fixup_prefix); repo_format_commit_message(the_repository, commit, fmt, &sb,
@@ -1189,7 +1189,7 @@ static const char *read_commit_message(const char *name) commit =lookup_commit_reference_by_name (name);if (!commit) -die (_ ("could not lookup commit %s" ), name); +die (_ ("could not lookup commit '%s'" ), name); out_enc =get_commit_output_encoding ();return repo_logmsg_reencode (the_repository, commit,NULL , out_enc); }
builtin/merge-tree.c +1 -1
@@ -448,7 +448,7 @@ static int real_merge(struct merge_tree_options *o, base_commit =lookup_commit_reference_by_name (merge_base);if (!base_commit) -die (_ ("could not lookup commit %s" ), merge_base); +die (_ ("could not lookup commit '%s'" ), merge_base); opt.ancestor = merge_base; base_tree =repo_get_commit_tree (the_repository, base_commit);
Signature · 1 line
2.41.0.rc2
Quoted 3 lines · Teng Long
From: Teng Long <[email protected]>
The output maybe become confused to recognize if the user
Probably "may become confusing to".
Quoted 4 lines
accidentally mistook an extra opening space, like:
$git commit --fixup="
6d6360b67e99c2fd82d64619c971fdede98ee74b"
fatal: could not lookup commit6d6360b67e99c2fd82d64619c971fdede98ee74b
I'd prefer a space between the prompt "$" and the command "git".
Quoted 2 lines
and it will be better if we surround the %s specifier with single quotes.
Indeed. Everything else in the message I am responding to, I am 100% happy with.
Will queue with manual fixups.
Thanks.
Quoted 50 lines
Signed-off-by Teng Long <[email protected]>--- builtin/commit.c | 6 +++--- builtin/merge-tree.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-)builtin/commit.c +3
-3@@ -763,7 +763,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix,struct commit *c; c =lookup_commit_reference_by_name (squash_message);if (!c) -die (_ ("could not lookup commit %s" ), squash_message); +die (_ ("could not lookup commit '%s'" ), squash_message); ctx.output_encoding =get_commit_output_encoding (); repo_format_commit_message(the_repository, c, "squash! %s\n\n", &sb,@@ -798,7 +798,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix,char *fmt; commit =lookup_commit_reference_by_name (fixup_commit);if (!commit) -die (_ ("could not lookup commit %s" ), fixup_commit); +die (_ ("could not lookup commit '%s'" ), fixup_commit); ctx.output_encoding =get_commit_output_encoding (); fmt =xstrfmt ("%s! %%s\n\n" , fixup_prefix); repo_format_commit_message(the_repository, commit, fmt, &sb,@@ -1189,7 +1189,7 @@ static const char *read_commit_message(const char *name) commit =lookup_commit_reference_by_name (name);if (!commit) -die (_ ("could not lookup commit %s" ), name); +die (_ ("could not lookup commit '%s'" ), name); out_enc =get_commit_output_encoding ();return repo_logmsg_reencode (the_repository, commit,NULL , out_enc); }builtin/merge-tree.c +1
-1@@ -448,7 +448,7 @@ static int real_merge(struct merge_tree_options *o, base_commit =lookup_commit_reference_by_name (merge_base);if (!base_commit) -die (_ ("could not lookup commit %s" ), merge_base); +die (_ ("could not lookup commit '%s'" ), merge_base); opt.ancestor = merge_base; base_tree =repo_get_commit_tree (the_repository, base_commit);
Quoted 9 lines · Teng Long
From: Teng Long <[email protected]>
The output maybe become confused to recognize if the user accidentally mistook an extra opening space, like:
$git commit --fixup="
6d6360b67e99c2fd82d64619c971fdede98ee74b"
fatal: could not lookup commit6d6360b67e99c2fd82d64619c971fdede98ee74band it will be better if we surround the %s specifier with single quotes.
The only remaining hits from
$ git grep -e '_("[^('\'']%s'(that is, "find the messages that has %s without a single quote or an opening parenthesis immediately before it") are found in builtin/remote.c where this template
const char *dangling_msg = dry_run
? _(" %s will become dangling!")
: _(" %s has become dangling!");
is given to the refs.c::warn_dangling_symrefs() API function to be used to show refs found by the system to be dangling. It can be argued that these are better quoted for consistency, but I tend to side with the current code, as there is much less risk (than the cases you fixed in your patch) for ambiguity and confusion there.