summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorGravatar http://joeyh.name/ <http://joeyh.name/@web>2013-07-16 19:08:49 +0000
committerGravatar admin <admin@branchable.com>2013-07-16 19:08:49 +0000
commit900487d5ae7b2d68bbeed4ac1630bc1fb787aed7 (patch)
treec489c3a2f2e9848ef4637119c7e7a1a87911b03c /doc
parent74b2b0ac03dbc8827efa06ae44989be28b3fcabe (diff)
Added a comment
Diffstat (limited to 'doc')
-rw-r--r--doc/bugs/git_annex_uninit_loses_content_when_interrupted/comment_2_0e99f6ef4f8b342ef0ebc64dbf8e2ce6._comment12
1 files changed, 12 insertions, 0 deletions
diff --git a/doc/bugs/git_annex_uninit_loses_content_when_interrupted/comment_2_0e99f6ef4f8b342ef0ebc64dbf8e2ce6._comment b/doc/bugs/git_annex_uninit_loses_content_when_interrupted/comment_2_0e99f6ef4f8b342ef0ebc64dbf8e2ce6._comment
new file mode 100644
index 000000000..2b6fc4186
--- /dev/null
+++ b/doc/bugs/git_annex_uninit_loses_content_when_interrupted/comment_2_0e99f6ef4f8b342ef0ebc64dbf8e2ce6._comment
@@ -0,0 +1,12 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.154.4.90"
+ subject="comment 2"
+ date="2013-07-16T19:08:49Z"
+ content="""
+However, if you then run `git annex uninit` a second time, it goes ahead and deletes the content! That is a bug.
+
+I looked into trying to make uninit always replace the symlink atomically with the file content. It can't be done when using --fast, since it's not possible to atomically replace a symlink with a hard link (AFAIK). It should be possible to do it in the normal mode, but it would require manually constructing a commit, since git does not provide a way to delete a file from the index and commit that staged change without also committing any other changes that are staged -- and uninit should preseve any changes to non-annexed files that the user has staged. So, I don't think atomic operation is the right answer.
+
+Instead, I have made uninit refuse to delete .git/annex/objects unless it's empty, and if objects are still left in there, for whatever reason, it'll fail at the end with a nice message explaining some options. I think this is the right fix because it also avoids uninit removing historical versions of files that were stored in git-annex.g
+"""]]