Re: [msysGit] Re: [PATCH 0/2] submodules: Use relative paths to gitdir and work tree
- From
Jens Lehmann <jens.lehmann@web.de>
- Date
- Feb 28, 2012, 19:33 UTC
- 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:
Show 13 quoted lines
> Johannes Sixt <j6t@kdbg.org> 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.
Show 15 quoted lines
>> 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
>