threads / patch / 5823

patch, 6 partsgit-blame: --show-name (and -f)

Subject: [PATCH 2/6] git-blame: --show-name (and -f)

## tl;dr

One message between Oct 5, 2006 and Oct 5, 2006. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Junio C Hamano· Oct 5, 2006, 21:06 UTC · lore

The new option makes the command's native output format show the filename even when there were no renames in its history, to make it simpler for Porcelains to parse its output.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
 blame.c |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)
Show changes to blame.c +9 −5
diff --git a/blame.c b/blame.c
index 394b5c3..d830b29 100644
--- a/blame.c
+++ b/blame.c
@@ -752,7 +752,7 @@ int main(int argc, const char **argv)
 	const char *buf;
 	int max_digits;
 	int longest_file, longest_author;
-	int found_rename;
+	int show_name = 0;
 
 	const char *prefix = setup_git_directory();
 	git_config(git_default_config);
@@ -786,6 +786,11 @@ int main(int argc, const char **argv)
 				}
 				usage(blame_usage);
 			}
+			if (!strcmp(argv[i], "-f") ||
+			    !strcmp(argv[i], "--show-name")) {
+				show_name = 1;
+				continue;
+			}
 			if (!strcmp(argv[i], "--")) {
 				options = 0;
 				continue;
@@ -853,7 +858,6 @@ int main(int argc, const char **argv)
 
 	longest_file = 0;
 	longest_author = 0;
-	found_rename = 0;
 	for (i = 0; i < num_blame_lines; i++) {
 		struct commit *c = blame_lines[i];
 		struct util_info *u;
@@ -861,8 +865,8 @@ int main(int argc, const char **argv)
 			c = initial;
 		u = c->util;
 
-		if (!found_rename && strcmp(filename, u->pathname))
-			found_rename = 1;
+		if (!show_name && strcmp(filename, u->pathname))
+			show_name = 1;
 		if (longest_file < strlen(u->pathname))
 			longest_file = strlen(u->pathname);
 		get_commit_info(c, &ci);
@@ -886,7 +890,7 @@ int main(int argc, const char **argv)
 			       i+1);
 		}
 		else {
-			if (found_rename)
+			if (show_name)
 				printf(" %-*.*s", longest_file, longest_file,
 				       u->pathname);
 			printf(" (%-*.*s %10s %*d) ",
-- 
1.4.2.3.g866f3

← back to recent threads