How does git deal with hard links in source code?

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

How does git deal with hard links in source code?

From: Seth Kriticos <hidden>
Date: 2016-06-15 22:49:22

Hi list,

I've got a question my google-fu and the docs were not able
to answer:

Is there a way to preserve the hard links that are within
a git repository checkout (the stuff that is tracked by the
git repository)?

The use-case I have is the following: I want to have two
different template directories for stuff in the tracked
sources: a base one and some extended ones. I want to have
the stuff from the base one hard-linked to the extended one,
so changes in the base one change all the other depending
templates too.

Now for testing I committed and pushed an instance of this
and then cloned the repository, and it ate my hard links
(checked out two separate copies of the files).

Is there a way to convince git not to eat my hard links
without some complicated scripting magic and checkout hooks?

~ Seth Kriticos

Re: How does git deal with hard links in source code?

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:49:22

Seth Kriticos [off-list ref] writes:
I've got a question my google-fu and the docs were not able
to answer:

Is there a way to preserve the hard links that are within
a git repository checkout (the stuff that is tracked by the
git repository)?
No, there isn't, and there shouldn't.  Not all filesystems support
hardlinks.
 
The use-case I have is the following: I want to have two
different template directories for stuff in the tracked
sources: a base one and some extended ones. I want to have
the stuff from the base one hard-linked to the extended one,
so changes in the base one change all the other depending
templates too.

Now for testing I committed and pushed an instance of this
and then cloned the repository, and it ate my hard links
(checked out two separate copies of the files).

Is there a way to convince git not to eat my hard links
without some complicated scripting magic and checkout hooks?
Make hardlinks on deploy.

-- 
Jakub Narebski
Poland
ShadeHawk on #git
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help