threads / patch / 25785

patch, 4 partsgitk: Remove unused $cdate array

Subject: [PATCH 2/4] gitk: Remove unused $cdate array

## tl;dr

4 messages between Nov 19, 2010 and Nov 19, 2010. Diffs are folded; open one to read it.

replies: 3people: 1as markdown or json

Anders Kaseorg· Nov 19, 2010, 07:38 UTC · lore

[PATCH 1/4] gitk: Update cherry-pick error message parsing

Commit 981ff5c37ae20687c98d98c8689d5e89016026d2 changed the error
message from git cherry-pick from
    Automatic cherry-pick failed.  [...advice...]
to
    error: could not apply 7ab78c9... Do something neat.
    [...advice...]

Update gitk’s regex to match this, restoring the ability to launch git citool to resolve conflicted cherry-picks.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
---
 gitk-git/gitk |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Show changes to gitk-git/gitk +1 −1
diff --git a/gitk-git/gitk b/gitk-git/gitk
index 1b0e09a..dbc8f86 100644
--- a/gitk-git/gitk
+++ b/gitk-git/gitk
@@ -9002,7 +9002,7 @@ proc cherrypick {} {
 			to file '%s'.\nPlease commit, reset or stash\
 			your changes and try again." $fname]
 	} elseif {[regexp -line \
-		       {^(CONFLICT \(.*\):|Automatic cherry-pick failed)} \
+		       {^(CONFLICT \(.*\):|Automatic cherry-pick failed|error: could not apply)} \
 		       $err]} {
 	    if {[confirm_popup [mc "Cherry-pick failed because of merge\
 			conflict.\nDo you wish to run git citool to\
-- 
1.7.3.2
Anders Kaseorg· Nov 19, 2010, 07:38 UTC · re: Anders Kaseorg · lore
It was unused since commit 9f1afe05c3ab7228e21ba3666c6e35d693149b37.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
---
 gitk-git/gitk |    5 +----
 1 files changed, 1 insertions(+), 4 deletions(-)
Show changes to gitk-git/gitk +1 −4
diff --git a/gitk-git/gitk b/gitk-git/gitk
index dbc8f86..61f2e95 100644
--- a/gitk-git/gitk
+++ b/gitk-git/gitk
@@ -1606,7 +1606,7 @@ proc readcommit {id} {
 }
 
 proc parsecommit {id contents listed} {
-    global commitinfo cdate
+    global commitinfo
 
     set inhdr 1
     set comment {}
@@ -1656,9 +1656,6 @@ proc parsecommit {id contents listed} {
 	}
 	set comment $newcomment
     }
-    if {$comdate != {}} {
-	set cdate($id) $comdate
-    }
     set commitinfo($id) [list $headline $auname $audate \
 			     $comname $comdate $comment]
 }
-- 
1.7.3.2
Anders Kaseorg· Nov 19, 2010, 07:38 UTC · re: Anders Kaseorg · lore

[PATCH 3/4] gitk: Remember time zones from author and commit timestamps

When resolving a conflicted cherry-pick, this lets us pass GIT_AUTHOR_DATE to git citool with the correct timezone.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
---
 gitk-git/gitk |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
Show changes to gitk-git/gitk +4 −4
diff --git a/gitk-git/gitk b/gitk-git/gitk
index 61f2e95..acdbd21 100644
--- a/gitk-git/gitk
+++ b/gitk-git/gitk
@@ -644,7 +644,7 @@ proc newvarc {view id} {
 	if {![info exists commitinfo($id)]} {
 	    parsecommit $id $commitdata($id) 1
 	}
-	set cdate [lindex $commitinfo($id) 4]
+	set cdate [lindex [lindex $commitinfo($id) 4] 0]
 	if {![string is integer -strict $cdate]} {
 	    set cdate 0
 	}
@@ -1626,10 +1626,10 @@ proc parsecommit {id contents listed} {
 	set line [split $line " "]
 	set tag [lindex $line 0]
 	if {$tag == "author"} {
-	    set audate [lindex $line end-1]
+	    set audate [lrange $line end-1 end]
 	    set auname [join [lrange $line 1 end-2] " "]
 	} elseif {$tag == "committer"} {
-	    set comdate [lindex $line end-1]
+	    set comdate [lrange $line end-1 end]
 	    set comname [join [lrange $line 1 end-2] " "]
 	}
     }
@@ -10957,7 +10957,7 @@ proc prefsok {} {
 proc formatdate {d} {
     global datetimeformat
     if {$d ne {}} {
-	set d [clock format $d -format $datetimeformat]
+	set d [clock format [lindex $d 0] -format $datetimeformat]
     }
     return $d
 }
-- 
1.7.3.2
Anders Kaseorg· Nov 19, 2010, 07:38 UTC · re: Anders Kaseorg · lore

[PATCH 4/4] gitk: Allow displaying time zones from author and commit timestamps

Now gitk can be configured to display author and commit dates in their original timezone, by putting %z into datetimeformat in ~/.gitk.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
---
 gitk-git/gitk |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)
Show changes to gitk-git/gitk +12 −1
diff --git a/gitk-git/gitk b/gitk-git/gitk
index acdbd21..b67ecc4 100644
--- a/gitk-git/gitk
+++ b/gitk-git/gitk
@@ -10957,7 +10957,18 @@ proc prefsok {} {
 proc formatdate {d} {
     global datetimeformat
     if {$d ne {}} {
-	set d [clock format [lindex $d 0] -format $datetimeformat]
+	if {[string match {*%[zZ]*} $datetimeformat]} {
+	    if {[catch {set d [clock format [lindex $d 0] -timezone [lindex $d 1] -format $datetimeformat]}]} {
+		# Tcl < 8.5 does not support -timezone.
+		global env
+		set zone [lindex $d 1]
+		set env(TZ) "IDK[string range $zone 0 2]:[string range $zone 3 end]"
+		set d [clock format [lindex $d 0] -format $datetimeformat]
+		unset env(TZ)
+	    }
+	} else {
+	    set d [clock format [lindex $d 0] -format $datetimeformat]
+	}
     }
     return $d
 }
-- 
1.7.3.2

← back to recent threads