git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] rev-list: honor --abbrev=<n> when doing --pretty=oneline

From
EWEric Wong <normalperson@yhbt.net>
Date
Apr 7, 2006, 00:44 UTC
Message-ID
<20060407004455.GF15743@hand.yhbt.net>

This should make --pretty=oneline a whole lot more readable for people using 80-column terminals.

Note that --abbrev=DEFAULT_ABBREV was on by default before, but it only affected the printing of the Merge: header). Let me know if anybody doesn't want the default behavior to change. Also note that --abbrev without arguments is not supported by rev-list, but --no-abbrev is supported if you want the old behavior.

Originally I made abbrev affect the commit sha1 output regardless of the pretty setting, but that broke some tests and I figured it's most/only useful for --pretty=oneline (at least that's why *I* want it :)

Signed-off-by: Eric Wong <normalperson@yhbt.net>
---
 rev-list.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
c4da073e8256499950e25e2c20ea0b3ec4c29b46
diff --git a/rev-list.c b/rev-list.c
index 22141e2..392209d 100644
--- a/rev-list.c
+++ b/rev-list.c
@@ -52,7 +52,10 @@ static void show_commit(struct commit *c
 		fputs(commit_prefix, stdout);
 	if (commit->object.flags & BOUNDARY)
 		putchar('-');
-	fputs(sha1_to_hex(commit->object.sha1), stdout);
+	if (abbrev && commit_format == CMIT_FMT_ONELINE)
+		fputs(find_unique_abbrev(commit->object.sha1, abbrev), stdout);
+	else
+		fputs(sha1_to_hex(commit->object.sha1), stdout);
 	if (revs.parents) {
 		struct commit_list *parents = commit->parents;
 		while (parents) {
-- 
1.3.0.rc2.g454a-dirty
Next: Junio C Hamano
Message 1 of 3 in “rev-list: honor --abbrev=<n> when doing --pretty=oneline”
  1. rev-list: honor --abbrev=<n> when doing --pretty=onelineEric Wong, Apr 7, 2006
  2. Junio C HamanoApr 7, 2006
  3. Eric WongApr 7, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.