threads / discuss / 9752

gitk fails to parse git log output in 1.5.3

Subject: gitk fails to parse git log output in 1.5.3

## tl;dr

3 messages between Sep 2, 2007 and Sep 3, 2007.

replies: 2people: 2as markdown or json

Jing Xue· Sep 2, 2007, 22:31 UTC · lore

gitk shows an error "Can't parse git log output: {\x1b[33commit..." at startup and quits.

Obviously it's because my git-log outputs in color mode. But the same happens (and git-log still outputs in colors) after I set color.pager=false.

What am I missing?
Thanks.
-- 
Jing Xue
Junio C Hamano· Sep 2, 2007, 23:16 UTC · re: Jing Xue · lore

Re: gitk fails to parse git log output in 1.5.3

Jing Xue <jingxue@digizenstudio.com> writes:
Show 7 quoted lines
> gitk shows an error "Can't parse git log output: {\x1b[33commit..." at
> startup and quits.
>
> Obviously it's because my git-log outputs in color mode. But the same
> happens (and git-log still outputs in colors) after I set color.pager=false. 
>
> What am I missing?
This will quickly turn into an FAQ.
Please see:
	http://thread.gmane.org/gmane.comp.version-control.git/57204

for details and a possible future plans. Making "diff.color = true" to always color was a mistake, and if you have such a configuration, it would break any script that reads from "git log". In the meantime, do not do "diff.color = true" (or "color.diff = true") in your configuration; say "auto" instead of "true", and/or apply this patch.

---
 gitk |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/gitk b/gitk
index 300fdce..9c21eff 100755
--- a/gitk
+++ b/gitk
@@ -93,6 +93,7 @@ proc start_rev_list {view} {
     }
     if {[catch {
 	set fd [open [concat | git log -z --pretty=raw $order --parents \
+			 --no-color \
 			 --boundary $viewargs($view) "--" $viewfiles($view)] r]
     } err]} {
 	error_popup "Error executing git rev-list: $err"
Jing Xue· Sep 3, 2007, 01:25 UTC · re: Junio C Hamano · lore

Re: gitk fails to parse git log output in 1.5.3

On Sun, Sep 02, 2007 at 04:16:05PM -0700, Junio C Hamano wrote:
> 
> This will quickly turn into an FAQ.
Indeed. I went and added it to the Wiki/FAQ.

Also I noticed that git-log was missing the descriptions for '--color' and '--no-color'.

Signed-off-by: Jing Xue <jingxue@digizenstudio.com>
---
 Documentation/git-log.txt |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/Documentation/git-log.txt b/Documentation/git-log.txt
index 5ec547c..c42ca89 100644
--- a/Documentation/git-log.txt
+++ b/Documentation/git-log.txt
@@ -72,6 +72,14 @@ include::pretty-options.txt[]
 	Note that only message is considered, if also a diff is shown
 	its size is not included.
 
+--color::
+	Show colored log entries. Same as if `color.diff` were set to
+    "true".
+
+--no-color::
+	Turn off colored log entries, even when `color.diff` sets the
+    default to color output.
+
 <paths>...::
 	Show only commits that affect the specified paths.
 
-- 
1.5.3

← back to recent threads