integrity of linux copy of a git repo

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

integrity of linux copy of a git repo

From: Neal Kreitzinger <hidden>
Date: 2016-06-15 22:49:40

If I make a recursive linux copy, "cp -rfp", of a git repo working tree is 
the resulting copy interchangeable with the original?

e.g.
/orig-wk-tree was created via git-clone with the file:/// url and therefore 
is a "full copy"
cp -rfp /orig-wk-tree /orig-wk-tree-copy
(do some stuff that breaks /orig-wk-tree)
rm -rf /orig-wk-tree
mv /orig-wk-tree-copy /orig-wk-tree

Have I truly recovered the full integrity of the original, or have I 
unwittingly introduced some sort of corruption?

v/r,
Neal

Re: integrity of linux copy of a git repo

From: Jonathan Nieder <hidden>
Date: 2016-06-15 22:49:40

Hi Neal,

Neal Kreitzinger wrote:
If I make a recursive linux copy, "cp -rfp", of a git repo working tree is 
the resulting copy interchangeable with the original?
Yes, the git metadata does not hardcode the path to the repo anywhere.
See gitrepository-layout(7) for perhaps more detail than you wanted.

You might want to use "git add --refresh ." (or even just "git diff")
to update the cached stat() information before starting work with the
new worktree, but that only matters if you are going to use very
low-level commands.
cp -rfp /orig-wk-tree /orig-wk-tree-copy
(do some stuff that breaks /orig-wk-tree)
rm -rf /orig-wk-tree
mv /orig-wk-tree-copy /orig-wk-tree

Have I truly recovered the full integrity of the original
Sure, that's a good way to do experiments.

Hope that helps,
Jonathan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help