summaryrefslogtreecommitdiff
path: root/git-gui/windows/git-gui.sh
diff options
context:
space:
mode:
Diffstat (limited to 'git-gui/windows/git-gui.sh')
-rw-r--r--git-gui/windows/git-gui.sh24
1 files changed, 24 insertions, 0 deletions
diff --git a/git-gui/windows/git-gui.sh b/git-gui/windows/git-gui.sh
new file mode 100644
index 0000000000..66bbb2f8fa
--- /dev/null
+++ b/git-gui/windows/git-gui.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+# Tcl ignores the next line -*- tcl -*- \
+exec wish "$0" -- "$@"
+
+if { $argc >=2 && [lindex $argv 0] == "--working-dir" } {
+ set workdir [lindex $argv 1]
+ cd $workdir
+ if {[lindex [file split $workdir] end] eq {.git}} {
+ # Workaround for Explorer right click "Git GUI Here" on .git/
+ cd ..
+ }
+ set argv [lrange $argv 2 end]
+ incr argc -2
+}
+
+set bindir [file dirname \
+ [file dirname \
+ [file dirname [info script]]]]
+set bindir [file join $bindir bin]
+regsub -all ";" $bindir "\\;" bindir
+set env(PATH) "$bindir;$env(PATH)"
+unset bindir
+
+source [file join [file dirname [info script]] git-gui.tcl]