Re: symbolic link management in git-archive
- From
Sergio Callegari <sergio.callegari@gmail.com>
- Date
- Mar 31, 2008, 22:12 UTC
- Message-ID
- <47F161B9.1030408@gmail.com>
- In-Reply-To
- <47F14D4A.2020403@lsrfire.ath.cx>
René Scharfe wrote:
Show 14 quoted lines
> Windows 2000 and up has support for symbolic links; it's just strangely > restricted, [...] here's a good starting point for > more information: http://en.wikipedia.org/wiki/NTFS_junction_point > > Arguably, your unzip program should create junction points for symlinks > in zip files. I wouldn't be surprised if none of the existing ones > support that, though; > > Would it be practical for you to distribute a junction point creation > tool like Mark Russinovich's Junction (except that Junction's EULA > forbids redistribution under most circumstances; see here: > http://www.microsoft.com/technet/sysinternals/FileAndDisk/Junction.mspx) > and a script that creates these symlinks for your audience? >
Thank you very much for the detailed explanation. Unfortunately, I do not think that Junction can be an option. My colleagues using Windows tend to be a bit "conservative" about the tools they use. If they navigate filesystem contents with the graphical tool, and they look-at/expand the content of a zip file from explorer they expect that it should be immediately right, otherwise there must be something wrong in the way /I/ create zip files. They would not appreciate having to unzip the file and then run an additional program on it to fix the unzipped stuff.
Show 13 quoted lines
> It's harder for git-archive to support following symlinks than for e.g. > GNU tar. The reason is that the former operates on git objects, not > files, directories or symlinks. In order to follow a symlink it would > need to evaluate the symlink, follow it and then add actual files and > directories to the archive. > > For your purposes, perhaps a slightly different implementation might be > sufficient: namely to follow only relative symlinks that point to > tracked objects. That way you still get a repeatable result and (most > importantly) git-archive doesn't need to look at files and directories, > it can stay safely in git land. Would such a way of operation be useful > to you? >
Absolutely positive. This would be already a great improvement, fulfilling 99.9% of needs.
Sergio