summaryrefslogtreecommitdiff
path: root/doc/bugs/Incorrect_merge___40__a_special_case__41__.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'doc/bugs/Incorrect_merge___40__a_special_case__41__.mdwn')
-rw-r--r--doc/bugs/Incorrect_merge___40__a_special_case__41__.mdwn45
1 files changed, 45 insertions, 0 deletions
diff --git a/doc/bugs/Incorrect_merge___40__a_special_case__41__.mdwn b/doc/bugs/Incorrect_merge___40__a_special_case__41__.mdwn
new file mode 100644
index 000000000..5b817e214
--- /dev/null
+++ b/doc/bugs/Incorrect_merge___40__a_special_case__41__.mdwn
@@ -0,0 +1,45 @@
+### Please describe the problem.
+(Minor issue.)
+
+Incorrect merge of direct repos in the special case where at repo A a symlink to a file whose contents aren't yet available, are overwritten, while at repo B the file is deleted.
+
+Result: file is deleted on both side.
+
+Expected: B.f is gone, A.f is still present
+
+### What steps will reproduce the problem?
+
+[[!format sh """
+# setting up stuff
+test/a$ git init
+test/a$ git annex init
+test/a$ git annex direct
+test/a$ touch firstfile
+test/a$ git annex add firstfile
+$ git clone test/a
+$ mv a test/b
+test/b$ git annex direct
+
+# actual scenario
+test/b$ echo bbbb > f
+test/b$ git annex add f
+test/b$ git annex sync
+test/a$ git annex sync
+test/a$ echo aaaa > f
+test/a$ git annex add f
+test/a$ git annex sync
+test/b$ rm f
+test/b$ git annex sync
+test/a$ git annex sync
+# test/a/f is now gone, lost
+"""]]
+
+### What version of git-annex are you using? On what operating system?
+[[!format sh """
+git-annex version: 4.20131031-g7d99d14
+build flags: Assistant Webapp Pairing Testsuite S3 WebDAV Inotify DBus XMPP DNS Feeds Quvi TDFA CryptoHash
+key/value backends: SHA256E SHA1E SHA512E SHA224E SHA384E SKEIN256E SKEIN512E SHA256 SHA1 SHA512 SHA224 SHA384 SKEIN256 SKEIN512 WORM URL
+remote types: git gcrypt S3 bup directory rsync web webdav glacier hook
+
+Linux ceilingcat 3.11.6-1-ARCH #1 SMP PREEMPT Fri Oct 18 23:22:36 CEST 2013 x86_64 GNU/Linux
+"""]]