[BUG] Filenames with single colon being treated as remote repository
- From
William Giokas <1007380@gmail.com>
- Date
- Apr 21, 2013, 04:53 UTC
- Message-ID
- <20130421045329.GB30538@WST420>
All,
It was brought to my attention today that git has some weird behaviour when colons (:) are used in directory names.
In my distros packaging system, for git repositories we clone a bare repo and then clone that bare repo locally as a temporary build directory (no, we can't use cp, it's a bare repository). Say we have a directory, /tmp/foo:bar/baz, that is a git repository. If I want to get a clone of that repository locally, using all of the local optimizations, then I need to run::
$ git clone /tmp/foo:bar/baz /tmp/new-baz
but running this gives me this output::
Cloning into 'new-baz'...
ssh: Could not resolve hostname /tmp/foo: Success
fatal: Could not read from remote repository. Please make sure you have the correct access rights
and the repository exists.
which it should not be doing. It is possible to use a file:// url to
clone it, but then the --local option is ignored and no optimizations
are made. After asking on #git, I was directed to the transport.c file,
but I don't know what in that is failing. We ran some tests on the
is_local function and it seems to work correctly.Any ideas on how to debug this further?
Thank you,
-- William Giokas | KaiSforza GnuPG Key: 0x73CD09CF Fingerprint: F73F 50EF BBE2 9846 8306 E6B8 6902 06D8 73CD 09CF