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

From: Michael Geddes <[email-masked]>
Date: Tue, 20 Aug 2013 15:30:55 +0800

This type of functionality is directly supported by the work I've already done 
on symlinks here:   https://github.com/frogonwheels/git   
(branches mrg/symlink-v*  )

Even if we agree that symlinks only work to a limited degree, or that there 
are definite limitations, and that the default should be that symlinks NOT be 
supported within repositories, I'm not sure why people are against 
incorporating what I've already implemented.. ok well I guess I do - it's 
about time.

Firstly, at the least it means that symlinks like this example where they are  
outside the repository are supported.  Secondly it means that people who are 
prepared to accept the limitations will be able to use (or at least clone) 
repositories containing symlinks.

One of the big, painful limitations is that windoze symlinks need to be marked 
as directories at the time of creation.  The code I have implemented does it's 
level best to create the correct type of NTFS symlink based on repository 
information and falling back on filesystem information.

The argument about permissions is only partially valid, since that can be 
granted as an individual permission to the user without permanent 
administrator rights.

//.ichael G.

On Sat, 10 Aug 2013 06:34:59 PM Fredrik Gustafsson wrote:
> 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.
> 
> (In the git source code the readlink call in this abspath.c)

-- 
-- 
*** 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 [email-masked]
To unsubscribe from this group, send email to
[email-masked]
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 [email-masked].
For more options, visit https://groups.google.com/groups/opt_out.