Re: Relative url values in .gitmodules confusingly sensitive to clone via ssh vs https.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2020-03-17 at 18:34:09, Benjamin Shropshire wrote:
> From my perspective, this is a bug.
> 
> If I clone a repo twice like this:
> 
> git clone https://github.com/user/repo.git ./https
> git clone git@xxxxxxxxxx:user/repo.git ./ssh
> 
> And if it contains a .gitmodules like this:
> 
> [submodule "x"]
>     path = xxx
>     url = ../../different-user/something.git
> 
> When I `git submodule update --init --recursive` in each, only the
> HTTPS version works. the SSH version confusingly seems to try to find
> something at ~/different-user/something.git or some other path in the
> local file system.
> 
> this seems consistent with the URL parsing resulting in different
> segmentation and thus the ../../ ending up in different places:

Looking at the code, it appears that we don't let you go above the top
of the URL, which makes sense.  So we interpret it as a file system
path.

(And since this SSH format is not technically a URL, we don't have a
root slash, which is probably why this is a problem.)

Does it work if you write the following?

  git clone git@xxxxxxxxxx:/user/repo.git ./ssh
-- 
brian m. carlson: Houston, Texas, US
OpenPGP: https://keybase.io/bk2204

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux