From fd5c9cd6b7d699aacda8339426e96c5cd54063ea Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawkWQXo7MLYIDa-ep04UTbdz8KuvfjwLDCQ" Date: Mon, 6 Jan 2014 15:05:28 +0000 Subject: [PATCH] --- ...nce_with_Dropbox_results_in_data_loss.mdwn | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 doc/bugs/interference_with_Dropbox_results_in_data_loss.mdwn diff --git a/doc/bugs/interference_with_Dropbox_results_in_data_loss.mdwn b/doc/bugs/interference_with_Dropbox_results_in_data_loss.mdwn new file mode 100644 index 0000000000..bf8641dcc1 --- /dev/null +++ b/doc/bugs/interference_with_Dropbox_results_in_data_loss.mdwn @@ -0,0 +1,46 @@ +### Please describe the problem. + +When working with git-annex in a folder managed by Dropbox, the folders names in .git/annex/objects/ are mangled by Dropbox. This leads to lost files. + +This is not a git-annex bug, but the problem is severe and it would be helpful when git-annex can deal with it somehow. Possibilities are: + +* include a warning in documentation (this will be probably found after someone encounters the problem actually) +* issue a warning when running in a Dropbox managed folder +* avoid using filenames that differs in case only (this would make git-annex also more robust against corruption i.e. when a repository is copied over filesystems/protocols without filename case support) + +### What steps will reproduce the problem? + cd ~/Dropbox + mkdir test_annex + cd test_annex + git init + git annex init "test_annex" + cp ~/somefiles/* . + git annex add * + # wait for Dropbox to upload and mangle folder names in .git/annex/objects/ + find -L . -type l | wc -l # print number of broken symlinks + git annex fsck # prints all the missing files + + +### What version of git-annex are you using? On what operating system? + +3.20130207 +Fedora 19 + +### Please provide any additional information below. + +[[!format sh """ +# filder names mangled by Dropbox + +$ ls .git/annex/objects/ +Ff/ M9 (Case Conflict (1))/ x8 (Case Conflict (1))/ +Ff (Case Conflict)/ pF/ x9/ +Ff (Case Conflict (1))/ pF (Case Conflict)/ x9 (Case Conflict)/ +Ff (Case Conflict (2))/ pF (Case Conflict (1))/ Zf/ +Ff (Case Conflict (3))/ pF (Case Conflict (2))/ Zf (Case Conflict)/ +Ff (Case Conflict (4))/ pF (Case Conflict (3))/ Zf (Case Conflict (1))/ +Ff (Case Conflict (5))/ pF (Case Conflict (4))/ Zf (Case Conflict (2))/ +Ff (Case Conflict (6))/ PG/ Zf (Case Conflict (3))/ +... + +# End of transcript or log. +"""]]