gitk: require git >= 2.20
gitk has alternate code paths for early git up to 1.72, and has no defined minimum version. Setting any version > 1.72 as minimum will allow removing those code paths. The recent set of advisories published for git, gitk, and git-gui add updates for v2.43 and later, but Debian has buster withgit 2.20 still available. While Debian would be responsible for backporting any fixes to such an early version, we have no good reason preclude it. So, make 2.20 the minimum required git version. Helped-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Mark Levedahl <mlevedahl@gmail.com>
Mark Levedahl committed
Jun 5, 2025 at 17:09 UTC
8f49975bbd981a592c2c526e2a2b767f37a3feee
1 file changed
+16
-2
gitk
+16
-2
@@ -9,6 +9,22 @@ exec wish "$0" -- "$@"
9
10
package require Tk
11
12
+set MIN_GIT_VERSION 2.20
13
+regexp {^git version ([\d.]*\d)} [exec git version] _ git_version
14
+if {[package vcompare $git_version $MIN_GIT_VERSION] < 0} {
15
+ set message "The git executable found is too old.
16
+The minimum required version is $MIN_GIT_VERSION.0.
17
+The version of git found is $git_version."
18
+
19
+ catch {wm withdraw .}
20
+ tk_messageBox \
21
+ -icon error \
22
+ -type ok \
23
+ -title "gitk: fatal error" \
24
+ -message $message
25
+ exit 1
26
+}
27
+
28
######################################################################
29
##
30
## Enabling platform-specific code paths
@@ -12820,8 +12836,6 @@ if {$use_ttk} {
12836
setttkstyle
12837
}
12838
12823
-regexp {^git version ([\d.]*\d)} [exec git version] _ git_version
12824
-
12839
set show_notes {}
12840
if {[package vcompare $git_version "1.6.6.2"] >= 0} {
12841
set show_notes "--show-notes"