log: do not print ellipses with --abbrev-commit
'git log --abbrev-commit' added an ellipsis to all commit names that were abbreviated. This was particularly annoying if you wanted to cut&paste the sha1 from the terminal, since selecting by word would pick up '...' too. So use find_unique_abbrev() instead of diff_unique_abbrev() in all log-related commit sha1 printing routines, and also change the formatting of the 'Merge: parent1 parent2' line output via pretty_print_commit(). Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
5cd12b85fe
commit
7fcda9201e
@ -48,7 +48,7 @@ static void show_parents(struct commit *commit, int abbrev)
|
|||||||
struct commit_list *p;
|
struct commit_list *p;
|
||||||
for (p = commit->parents; p ; p = p->next) {
|
for (p = commit->parents; p ; p = p->next) {
|
||||||
struct commit *parent = p->item;
|
struct commit *parent = p->item;
|
||||||
printf(" %s", diff_unique_abbrev(parent->object.sha1, abbrev));
|
printf(" %s", find_unique_abbrev(parent->object.sha1, abbrev));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -280,7 +280,7 @@ void show_log(struct rev_info *opt)
|
|||||||
putchar('>');
|
putchar('>');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fputs(diff_unique_abbrev(commit->object.sha1, abbrev_commit), stdout);
|
fputs(find_unique_abbrev(commit->object.sha1, abbrev_commit), stdout);
|
||||||
if (opt->print_parents)
|
if (opt->print_parents)
|
||||||
show_parents(commit, abbrev_commit);
|
show_parents(commit, abbrev_commit);
|
||||||
show_decorations(opt, commit);
|
show_decorations(opt, commit);
|
||||||
@ -348,13 +348,13 @@ void show_log(struct rev_info *opt)
|
|||||||
putchar('>');
|
putchar('>');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fputs(diff_unique_abbrev(commit->object.sha1, abbrev_commit),
|
fputs(find_unique_abbrev(commit->object.sha1, abbrev_commit),
|
||||||
stdout);
|
stdout);
|
||||||
if (opt->print_parents)
|
if (opt->print_parents)
|
||||||
show_parents(commit, abbrev_commit);
|
show_parents(commit, abbrev_commit);
|
||||||
if (parent)
|
if (parent)
|
||||||
printf(" (from %s)",
|
printf(" (from %s)",
|
||||||
diff_unique_abbrev(parent->object.sha1,
|
find_unique_abbrev(parent->object.sha1,
|
||||||
abbrev_commit));
|
abbrev_commit));
|
||||||
show_decorations(opt, commit);
|
show_decorations(opt, commit);
|
||||||
printf("%s", diff_get_color_opt(&opt->diffopt, DIFF_RESET));
|
printf("%s", diff_get_color_opt(&opt->diffopt, DIFF_RESET));
|
||||||
|
4
pretty.c
4
pretty.c
@ -210,15 +210,13 @@ static void add_merge_info(enum cmit_fmt fmt, struct strbuf *sb,
|
|||||||
while (parent) {
|
while (parent) {
|
||||||
struct commit *p = parent->item;
|
struct commit *p = parent->item;
|
||||||
const char *hex = NULL;
|
const char *hex = NULL;
|
||||||
const char *dots;
|
|
||||||
if (abbrev)
|
if (abbrev)
|
||||||
hex = find_unique_abbrev(p->object.sha1, abbrev);
|
hex = find_unique_abbrev(p->object.sha1, abbrev);
|
||||||
if (!hex)
|
if (!hex)
|
||||||
hex = sha1_to_hex(p->object.sha1);
|
hex = sha1_to_hex(p->object.sha1);
|
||||||
dots = (abbrev && strlen(hex) != 40) ? "..." : "";
|
|
||||||
parent = parent->next;
|
parent = parent->next;
|
||||||
|
|
||||||
strbuf_addf(sb, " %s%s", hex, dots);
|
strbuf_addf(sb, " %s", hex);
|
||||||
}
|
}
|
||||||
strbuf_addch(sb, '\n');
|
strbuf_addch(sb, '\n');
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --patch-with-stat --summary master -- dir/
|
$ git log --patch-with-stat --summary master -- dir/
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --patch-with-stat master
|
$ git log --patch-with-stat master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --patch-with-stat master -- dir/
|
$ git log --patch-with-stat master -- dir/
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --root --cc --patch-with-stat --summary master
|
$ git log --root --cc --patch-with-stat --summary master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --root --patch-with-stat --summary master
|
$ git log --root --patch-with-stat --summary master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --root --patch-with-stat master
|
$ git log --root --patch-with-stat master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --root -c --patch-with-stat --summary master
|
$ git log --root -c --patch-with-stat --summary master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --root -p master
|
$ git log --root -p master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log --root master
|
$ git log --root master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log -p master
|
$ git log -p master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git log master
|
$ git log master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git show master
|
$ git show master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git whatchanged --root --cc --patch-with-stat --summary master
|
$ git whatchanged --root --cc --patch-with-stat --summary master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
$ git whatchanged --root -c --patch-with-stat --summary master
|
$ git whatchanged --root -c --patch-with-stat --summary master
|
||||||
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
commit 59d314ad6f356dd08601a4cd5e530381da3e3c64
|
||||||
Merge: 9a6d494... c7a2ab9...
|
Merge: 9a6d494 c7a2ab9
|
||||||
Author: A U Thor <author@example.com>
|
Author: A U Thor <author@example.com>
|
||||||
Date: Mon Jun 26 00:04:00 2006 +0000
|
Date: Mon Jun 26 00:04:00 2006 +0000
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user