comment
This commit is contained in:
parent
511e711bed
commit
247c0e59cf
1 changed files with 32 additions and 0 deletions
|
@ -0,0 +1,32 @@
|
||||||
|
[[!comment format=mdwn
|
||||||
|
username="joey"
|
||||||
|
subject="""comment 1"""
|
||||||
|
date="2022-09-09T18:54:08Z"
|
||||||
|
content="""
|
||||||
|
Suppose git-annex did behave that way. Now suppose that you ran:
|
||||||
|
|
||||||
|
git config annex.largefiles 'include=*'
|
||||||
|
git add largefile
|
||||||
|
git commit -m 'added a large file to git-annex (unlocked)'
|
||||||
|
git stash
|
||||||
|
|
||||||
|
Then git would have deleted the only copy of largefile, which
|
||||||
|
was the one stored in the working tree. You would have lost data.
|
||||||
|
The hard links, annoying as they are, avoid this problem.
|
||||||
|
|
||||||
|
> But as we know, when we modify a file, it invalidates its checksum
|
||||||
|
|
||||||
|
Right, and if you're going to be running things that open and modify
|
||||||
|
files, then it is not safe to set annex.thin.
|
||||||
|
"echo foo > largefile" will modify the file and lose the original version.
|
||||||
|
|
||||||
|
The difference is that you have to run something that does usually
|
||||||
|
modify the file to lose data (with annex.thin set).
|
||||||
|
Running a git command that is normally entirely safe will not lose data.
|
||||||
|
|
||||||
|
So the user of annex.thin only needs to keep in mind that some things that
|
||||||
|
would usually modify a file will lose the previous version of it,
|
||||||
|
unless they've copied it to another remote. They don't have to live in fear
|
||||||
|
of running a command that is usually safe and reversable and that causing
|
||||||
|
data loss.
|
||||||
|
"""]]
|
Loading…
Add table
Add a link
Reference in a new issue