git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git clone doesn't work in symlink dir roots on Windows

From
Erik Faye-Lund <kusmabite@gmail.com>
Date
Aug 11, 2013, 03:04 UTC
Message-ID
<CABPQNSaU_69RxNEAAY0=BYdJm0ir_xkOkd2nPaxop7m0aJ9trg@mail.gmail.com>
In-Reply-To
<20130810163459.GE25779@paksenarrion.iveqy.com>
On Sat, Aug 10, 2013 at 6:34 PM, Fredrik Gustafsson <iveqy@iveqy.com> wrote:
Show 27 quoted lines
> On Sat, Aug 10, 2013 at 07:22:03PM +0300, Sedat Kapanoglu wrote:
>> > git is a disk intense program, so this setup is not sane at all. With
>> > that said I know that git on windows historically had problems with
>> > working on smb-mounted shares (sometimes you're forced to have stupid
>> > setups). I doubt that git really is the right tool for your work, since
>>
>> I reproduced the same problem in a regular symlink directory. Repro steps:
>>
>> mkdir actualdir
>> mklink /d symdir actualdir
>> cd symdir
>> git init .
>>
>> fatal: Invalid symlink 'D:/gitto': Function not implemented
>>
>> Thanks,
>>
>> Sedat
>
> Good, then we can determinate that this is a symlink error, it seams
> that readlink() isn't implemented in the msysgit version of msysgit.
>
> However msysgit should have a implementation of readlink() according to:
> http://mingw.5.n7.nabble.com/Replacement-for-readlink-td30679.html
>
> I've CC:ed the msysgit-maillist so that they can decide if this is
> something they want to address in newer releases.

No, we do not. (I won't be bothered to read *yet* another thread about someone who thinks they know how symlinks should work on Windows, so I'll assume it's the Cygwin-take... which is the most senseful IMO) Symlinks in Cygwin are generally not compatible with native Windows applications.

And Windows symlinks are not at all compatible with POSIX-symlinks. At all.

Whoever wants symlink support in Git for Windows have clearly not considered how this would work (or more likely, break). It's an idea built on misunderstanding and poor engineering-concepts.

There's no way we can support symlinks in a clean, Windows specific way. So let's not even pretend it works.

That being said, we could probably error out in a more senseful way. But if so,suggestions/patches welcome.

-- 
-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en

--- 
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Previous: Fredrik GustafssonNext: Sedat Kapanoglu
Message 6 of 12 in “git clone doesn't work in symlink dir roots on Windows”
  1. Sedat KapanogluAug 10, 2013
  2. Fredrik GustafssonAug 10, 2013
  3. Sedat KapanogluAug 10, 2013
  4. Sedat KapanogluAug 10, 2013
  5. Fredrik GustafssonAug 10, 2013
  6. Erik Faye-LundAug 11, 2013
  7. Sedat KapanogluAug 11, 2013
  8. Erik Faye-LundAug 11, 2013
  9. Michael GeddesAug 20, 2013
  10. MNGoldenEagleAug 23, 2013
  11. MichaelAug 28, 2013
  12. MNGoldenEagleSep 8, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.