git-gui: mkdir -p when initializing new remote repository
authorPetr Baudis <pasky@suse.cz>
Wed, 24 Sep 2008 20:44:03 +0000 (22:44 +0200)
committerShawn O. Pearce <spearce@spearce.org>
Tue, 30 Sep 2008 19:59:18 +0000 (12:59 -0700)
This allows the user to create repositories with arbitrary paths
on the server. The downside is that errorneously typed paths are
not caught but instead created remotely; YMMV.

Signed-off-by: Petr Baudis <petr.baudis@novartis.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
lib/remote_add.tcl

index 89e88eeb49b0e2bf0dd568f12d847760ec488409..8e3ad166b70d990cb771c7c00a1501338c7c5d2c 100644 (file)
@@ -144,8 +144,9 @@ method _add {} {
                        if {[info exists env(GIT_SSH)]} {
                                set ssh $env(GIT_SSH)
                        }
-                       lappend cmds [list exec $ssh $host git --git-dir=$path init --bare]
+                       lappend cmds [list exec $ssh $host mkdir -p $location && git --git-dir=$path init --bare]
                } elseif { ! [regexp {://} $location xx] } {
+                       lappend cmds [list exec mkdir -p $location]
                        lappend cmds [list exec git --git-dir=$location init --bare]
                } else {
                        tk_messageBox \