Re: '.git file' alternative, native (cross-platform) workdir support.

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

 



Johannes Schindelin said the following on 29.02.2008 15:25:
On Fri, 29 Feb 2008, Marius Storm-Olsen wrote:
I'm actually not sure that it's impossible to make it safe. My implementation works by redirecting files into the real repo.
However, we can also detect when redirection is in effect, and do
extra 'maintainance' things then, to avoid the bad effects.

From the perspective of Windows, I guess it is easy to overlook the
fact that permissions can break your idea.

Even after creating a second working tree for an existing
repository, the permissions of the original repository can change.

Sure, but that would break _any_ working tree implementation. Without access to the original data, it whole thing is bust, no matter if you redirect all or part of .git/.

Checking if we have access to the redirected .git is trivial in both cases. (partial or whole redirection)

The only way to be on the safe side is to use _the repository_
twice.  IOW not having a second .git/ directory.

Also, having a single .git is just a very simple, and thus
preferable concept, to having part of this, and part of that
repository.

I whole heartedly agree. I'm not proposing to keep it split in the long run. I'm just proposing something that 'works' *now*, and can be improved incrementally; as opposed to, doesn't work now, and needs to be fully implemented before it works for the Windows crowd.

PS. The redirection method I propose already alleviates an issue of the current git-new-workdir has, which Shawn has experienced many atime: The deletion of .git/config and .git/packed-refs, making 'git-config' and 'git tag -d' unsafe in a workdir. (Though I'm unsure if that has been fixed already. In any case, since the files are really redirected, there no chance that deleting a file will remove a synlink, only to be recreated as a normal file instead)

--
.marius

Attachment: signature.asc
Description: OpenPGP digital 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