[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

hard links (was Re: Subversion != your filesystem (was mv != (cp && rm)))

From: Greg Hudson <ghudson_at_MIT.EDU>
Date: 2001-11-28 19:40:35 CET

On Wed, 2001-11-28 at 13:20, Karl Fogel wrote:
> We don't have any plans for hard-link support in the filesystem, as
> far as I know, actually. It's dangerous in Subversion for the same
> reasons its dangerous in a regular filesystem -- we need to prevent
> cycles.

We can probably prevent cycles. But supporting hard links raises some
big cans of worms, because we have to map our semantics onto a working
directory somehow. How do we represent hard-linked files in the working
directory? Copies? Hard links? Symbolic links? Hard links won't work
for directories (or in AFS, if the two linked files are in different
directories), and neither hard links nor symbolic links will work on
non-Unix platforms. If we represent them as copies, we run into a whole
bunch of commit-time error cases, like what happens if a user changes
both copies and then tries to commit (or changes both copies and then
commits one copy, and we have to try to propagate the change back to the
other copy in the working dir).

I can see some use cases for hard links (example: if apr, apache, and
subversion all lived in the same repository, apr could exist inside both
the apache and subversion source directories and never get out of sync
with the master copy), but I think it's just too complicated on balance.

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:49 2006

This is an archived mail posted to the Subversion Dev mailing list.