* [PATCH 0/2] describe: support the syntax "--abbrev=+"
@ 2014-08-23 17:13 Jonh Wendell
2014-08-23 17:13 ` [PATCH 1/2] " Jonh Wendell
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Jonh Wendell @ 2014-08-23 17:13 UTC (permalink / raw)
To: git
Sometimes it's interesting to have a simple output that answers the question:
Are there commits after the latest tag?
One possible solution is to just print a "+" (plus) signal after the tag. Example:
> git describe --abbrev=1 5261ec5d5
v2.1.0-rc1-2-g5261ec
> git describe --abbrev=+ 5261ec5d5
v2.1.0-rc1+
Jonh Wendell (2):
describe: support the syntax "--abbrev=+"
describe: Add documentation for "--abbrev=+"
Documentation/git-describe.txt | 6 ++++++
builtin/describe.c | 26 +++++++++++++++++++++-----
2 files changed, 27 insertions(+), 5 deletions(-)
--
1.9.3
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/2] describe: support the syntax "--abbrev=+"
2014-08-23 17:13 [PATCH 0/2] describe: support the syntax "--abbrev=+" Jonh Wendell
@ 2014-08-23 17:13 ` Jonh Wendell
2014-08-23 17:13 ` [PATCH 2/2] describe: Add documentation for "--abbrev=+" Jonh Wendell
2014-08-26 18:04 ` [PATCH 0/2] describe: support the syntax "--abbrev=+" Jonh Wendell
2 siblings, 0 replies; 7+ messages in thread
From: Jonh Wendell @ 2014-08-23 17:13 UTC (permalink / raw)
To: git
It will print just a "+" sign appended to the found tag, if there
are commits between the tag and the supplied commit.
It's useful when you just need a simple output to know if the
supplied commit is an exact match or not.
---
builtin/describe.c | 26 +++++++++++++++++++++-----
1 file changed, 21 insertions(+), 5 deletions(-)
diff --git a/builtin/describe.c b/builtin/describe.c
index ee6a3b9..3a5c052 100644
--- a/builtin/describe.c
+++ b/builtin/describe.c
@@ -30,6 +30,7 @@ static int have_util;
static const char *pattern;
static int always;
static const char *dirty;
+static int simple_abbrev = 0;
/* diff-index command arguments to check if working tree is dirty. */
static const char *diff_index_args[] = {
@@ -378,8 +379,12 @@ static void describe(const char *arg, int last_one)
}
display_name(all_matches[0].name);
- if (abbrev)
- show_suffix(all_matches[0].depth, cmit->object.sha1);
+ if (abbrev) {
+ if (simple_abbrev)
+ printf("+");
+ else
+ show_suffix(all_matches[0].depth, cmit->object.sha1);
+ }
if (dirty)
printf("%s", dirty);
printf("\n");
@@ -388,6 +393,16 @@ static void describe(const char *arg, int last_one)
clear_commit_marks(cmit, -1);
}
+static int parse_opt_abbrev_for_describe_cb(const struct option *opt, const char *arg, int unset)
+{
+ if (arg && !strncmp(arg, "+", 1)) {
+ simple_abbrev = 1;
+ return 0;
+ }
+
+ return parse_opt_abbrev_cb(opt, arg, unset);
+}
+
int cmd_describe(int argc, const char **argv, const char *prefix)
{
int contains = 0;
@@ -398,7 +413,6 @@ int cmd_describe(int argc, const char **argv, const char *prefix)
OPT_BOOL(0, "tags", &tags, N_("use any tag, even unannotated")),
OPT_BOOL(0, "long", &longformat, N_("always use long format")),
OPT_BOOL(0, "first-parent", &first_parent, N_("only follow first parent")),
- OPT__ABBREV(&abbrev),
OPT_SET_INT(0, "exact-match", &max_candidates,
N_("only output exact matches"), 0),
OPT_INTEGER(0, "candidates", &max_candidates,
@@ -410,6 +424,8 @@ int cmd_describe(int argc, const char **argv, const char *prefix)
{OPTION_STRING, 0, "dirty", &dirty, N_("mark"),
N_("append <mark> on dirty working tree (default: \"-dirty\")"),
PARSE_OPT_OPTARG, NULL, (intptr_t) "-dirty"},
+ {OPTION_CALLBACK, 0, "abbrev", &abbrev, N_("n"), N_("use <n> digits to display SHA-1s"),
+ PARSE_OPT_OPTARG, &parse_opt_abbrev_for_describe_cb, 0},
OPT_END(),
};
@@ -425,8 +441,8 @@ int cmd_describe(int argc, const char **argv, const char *prefix)
save_commit_buffer = 0;
- if (longformat && abbrev == 0)
- die(_("--long is incompatible with --abbrev=0"));
+ if (longformat && (abbrev == 0 || simple_abbrev))
+ die(_("--long is incompatible with --abbrev=+ or --abbrev=0"));
if (contains) {
struct argv_array args;
--
1.9.3
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/2] describe: Add documentation for "--abbrev=+"
2014-08-23 17:13 [PATCH 0/2] describe: support the syntax "--abbrev=+" Jonh Wendell
2014-08-23 17:13 ` [PATCH 1/2] " Jonh Wendell
@ 2014-08-23 17:13 ` Jonh Wendell
2014-08-24 6:35 ` brian m. carlson
2014-08-26 18:04 ` [PATCH 0/2] describe: support the syntax "--abbrev=+" Jonh Wendell
2 siblings, 1 reply; 7+ messages in thread
From: Jonh Wendell @ 2014-08-23 17:13 UTC (permalink / raw)
To: git
---
Documentation/git-describe.txt | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Documentation/git-describe.txt b/Documentation/git-describe.txt
index d20ca40..e291770 100644
--- a/Documentation/git-describe.txt
+++ b/Documentation/git-describe.txt
@@ -54,6 +54,12 @@ OPTIONS
abbreviated object name, use <n> digits, or as many digits
as needed to form a unique object name. An <n> of 0
will suppress long format, only showing the closest tag.
+ +
+ +
+ A special case of <n> equals to "\+" (without quotes) will print
+ just a "+" sign instead of the whole suffix. This is useful if you
+ only need to know if the supplied <commit-ish> points to an exact
+ match or if there are commits between the tag found and the <commit-ish>.
--candidates=<n>::
Instead of considering only the 10 most recent tags as
--
1.9.3
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] describe: Add documentation for "--abbrev=+"
2014-08-23 17:13 ` [PATCH 2/2] describe: Add documentation for "--abbrev=+" Jonh Wendell
@ 2014-08-24 6:35 ` brian m. carlson
2014-08-24 12:11 ` Jonh Wendell
0 siblings, 1 reply; 7+ messages in thread
From: brian m. carlson @ 2014-08-24 6:35 UTC (permalink / raw)
To: Jonh Wendell; +Cc: git
[-- Attachment #1: Type: text/plain, Size: 924 bytes --]
On Sat, Aug 23, 2014 at 02:13:22PM -0300, Jonh Wendell wrote:
> ---
> Documentation/git-describe.txt | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/Documentation/git-describe.txt b/Documentation/git-describe.txt
> index d20ca40..e291770 100644
> --- a/Documentation/git-describe.txt
> +++ b/Documentation/git-describe.txt
> @@ -54,6 +54,12 @@ OPTIONS
> abbreviated object name, use <n> digits, or as many digits
> as needed to form a unique object name. An <n> of 0
> will suppress long format, only showing the closest tag.
> + +
> + +
Did you intend to have two lines with just plus signs here? I'm not
aware of anywhere else in the Documentation where we do that.
--
brian m. carlson / brian with sandals: Houston, Texas, US
+1 832 623 2791 | http://www.crustytoothpaste.net/~bmc | My opinion only
OpenPGP: RSA v4 4096b: 88AC E9B2 9196 305B A994 7552 F1BA 225C 0223 B187
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] describe: Add documentation for "--abbrev=+"
2014-08-24 6:35 ` brian m. carlson
@ 2014-08-24 12:11 ` Jonh Wendell
0 siblings, 0 replies; 7+ messages in thread
From: Jonh Wendell @ 2014-08-24 12:11 UTC (permalink / raw)
To: Jonh Wendell, git
2014-08-24 3:35 GMT-03:00 brian m. carlson <sandals@crustytoothpaste.net>:
> On Sat, Aug 23, 2014 at 02:13:22PM -0300, Jonh Wendell wrote:
>> ---
>> Documentation/git-describe.txt | 6 ++++++
>> 1 file changed, 6 insertions(+)
>>
>> diff --git a/Documentation/git-describe.txt b/Documentation/git-describe.txt
>> index d20ca40..e291770 100644
>> --- a/Documentation/git-describe.txt
>> +++ b/Documentation/git-describe.txt
>> @@ -54,6 +54,12 @@ OPTIONS
>> abbreviated object name, use <n> digits, or as many digits
>> as needed to form a unique object name. An <n> of 0
>> will suppress long format, only showing the closest tag.
>> + +
>> + +
>
> Did you intend to have two lines with just plus signs here? I'm not
> aware of anywhere else in the Documentation where we do that.
> --
In my tests just one line was not enough to produce a proper line
break in the html output.
With two lines like above the output in man and html are ok (just 1 line break).
--
Jonh Wendell
http://www.bani.com.br
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/2] describe: support the syntax "--abbrev=+"
2014-08-23 17:13 [PATCH 0/2] describe: support the syntax "--abbrev=+" Jonh Wendell
2014-08-23 17:13 ` [PATCH 1/2] " Jonh Wendell
2014-08-23 17:13 ` [PATCH 2/2] describe: Add documentation for "--abbrev=+" Jonh Wendell
@ 2014-08-26 18:04 ` Jonh Wendell
2 siblings, 0 replies; 7+ messages in thread
From: Jonh Wendell @ 2014-08-26 18:04 UTC (permalink / raw)
To: git
hi there!
just a ping here, these are my first patches to git.
any comment, feedback?
2014-08-23 14:13 GMT-03:00 Jonh Wendell <jonh.wendell@gmail.com>:
> Sometimes it's interesting to have a simple output that answers the question:
> Are there commits after the latest tag?
>
> One possible solution is to just print a "+" (plus) signal after the tag. Example:
>
>> git describe --abbrev=1 5261ec5d5
> v2.1.0-rc1-2-g5261ec
>
>> git describe --abbrev=+ 5261ec5d5
> v2.1.0-rc1+
>
>
> Jonh Wendell (2):
> describe: support the syntax "--abbrev=+"
> describe: Add documentation for "--abbrev=+"
>
> Documentation/git-describe.txt | 6 ++++++
> builtin/describe.c | 26 +++++++++++++++++++++-----
> 2 files changed, 27 insertions(+), 5 deletions(-)
>
> --
> 1.9.3
>
--
Jonh Wendell
http://www.bani.com.br
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 0/2] describe: support the syntax "--abbrev=+"
@ 2014-09-12 14:26 Jonh Wendell
0 siblings, 0 replies; 7+ messages in thread
From: Jonh Wendell @ 2014-09-12 14:26 UTC (permalink / raw)
To: git; +Cc: Junio C Hamano, Jonh Wendell
Sometimes it's interesting to have a simple output that answers the question:
Are there commits after the latest tag?
One possible solution is to just print a "+" (plus) signal after the tag. Example:
> git describe --abbrev=1 5261ec5d5
v2.1.0-rc1-2-g5261ec
> git describe --abbrev=+ 5261ec5d5
v2.1.0-rc1+
First patch was sent in Aug 23, re-sending with Signed-off-by and
CC'ing Junio.
Jonh Wendell (2):
describe: support the syntax "--abbrev=+"
describe: Add documentation for "--abbrev=+"
Documentation/git-describe.txt | 6 ++++++
builtin/describe.c | 26 +++++++++++++++++++++-----
2 files changed, 27 insertions(+), 5 deletions(-)
--
1.9.3
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-09-12 14:27 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-23 17:13 [PATCH 0/2] describe: support the syntax "--abbrev=+" Jonh Wendell
2014-08-23 17:13 ` [PATCH 1/2] " Jonh Wendell
2014-08-23 17:13 ` [PATCH 2/2] describe: Add documentation for "--abbrev=+" Jonh Wendell
2014-08-24 6:35 ` brian m. carlson
2014-08-24 12:11 ` Jonh Wendell
2014-08-26 18:04 ` [PATCH 0/2] describe: support the syntax "--abbrev=+" Jonh Wendell
2014-09-12 14:26 Jonh Wendell
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.