From: Jens Lehmann Date: Tue, 28 Feb 2012 19:33:25 GMT Subject: Re: [msysGit] Re: [PATCH 0/2] submodules: Use relative paths to gitdir and work tree Message-ID: <4F4D2C05.5070901@web.de> In-Reply-To: <7vehtezs6q.fsf@alter.siamese.dyndns.org> Am 28.02.2012 20:14, schrieb Junio C Hamano: > Johannes Sixt writes: > >> With the following patch on top of your always-use-relative-gitdir branch >> from https://github.com/jlehmann/git-submod-enhancements the tests pass >> on Windows. >> >> Thanks, Dscho, for pointing out the obvious. > > The patch looks unintrusive and sane. > > Thanks all three of you for looking into this. Should I wait for a patch > with nice write-up from one of you, or should I just come up with a random > message and apply it locally avoiding roundtrip cost? Thanks, but that interdiff needs all three patches from my branch to work properly, while I only posted the first two here so far (without the third one the gitfile still might contain the "c:/" notation even with J6t's diff applied). I still need to remove the iffiness of my 2/2 patch and the third one needs a test case too before I can repost that series. >> diff --git a/git-submodule.sh b/git-submodule.sh >> index e1984e0..953ca5e 100755 >> --- a/git-submodule.sh >> +++ b/git-submodule.sh >> @@ -151,6 +151,9 @@ module_clone() >> >> a=$(cd "$gitdir" && pwd) >> b=$(cd "$path" && pwd) >> + # normalize Windows-style absolute paths to POSIX-style absolute paths >> + case $a in [a-zA-Z]:/*) a=/${a%%:*}${a#*:} esac >> + case $b in [a-zA-Z]:/*) b=/${b%%:*}${b#*:} esac >> # Remove all common leading directories >> while test -n "$a" && test -n "$b" && test "${a%%/*}" = "${b%%/*}" >> do >