This commit is contained in:
parent
38ddd6072d
commit
2010e98ebf
1 changed files with 154 additions and 0 deletions
|
@ -0,0 +1,154 @@
|
||||||
|
### Please describe the problem.
|
||||||
|
|
||||||
|
If multiple remotes edit group information and one of them does `git annex forget --force --drop-dead` some of those edits can be lost on sync.
|
||||||
|
|
||||||
|
### What steps will reproduce the problem?
|
||||||
|
|
||||||
|
Make a temporary directory and `cd` into it. Then run this script:
|
||||||
|
|
||||||
|
[[!format sh """
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
git annex version
|
||||||
|
|
||||||
|
git init a
|
||||||
|
cd a
|
||||||
|
git annex init
|
||||||
|
touch test
|
||||||
|
git annex add test
|
||||||
|
git annex sync
|
||||||
|
cd ..
|
||||||
|
git clone a b
|
||||||
|
cd b
|
||||||
|
git annex sync
|
||||||
|
|
||||||
|
cd ../a
|
||||||
|
git annex group here ga
|
||||||
|
git annex sync
|
||||||
|
cd ../b
|
||||||
|
git annex group here gb
|
||||||
|
git annex forget --force --drop-dead
|
||||||
|
git annex sync
|
||||||
|
|
||||||
|
cd ../a
|
||||||
|
git annex sync
|
||||||
|
cd ../b
|
||||||
|
git annex sync
|
||||||
|
|
||||||
|
cd ../a
|
||||||
|
echo "A IS IN GROUP:"
|
||||||
|
git annex group .
|
||||||
|
cd ../b
|
||||||
|
echo "B IS IN GROUP:"
|
||||||
|
git annex group .
|
||||||
|
|
||||||
|
"""]]
|
||||||
|
|
||||||
|
|
||||||
|
### What version of git-annex are you using? On what operating system?
|
||||||
|
|
||||||
|
6.20170101-1+deb9u2 on Debian Stretch but I also tested this occurs in version 6.20180719
|
||||||
|
|
||||||
|
### Please provide any additional information below.
|
||||||
|
|
||||||
|
Here's the output of the above script. The interesting part is the last two lines which show that remote 'b' is not in any group despite being added to group 'gb'.
|
||||||
|
|
||||||
|
[[!format sh """
|
||||||
|
git-annex version: 6.20170101.1
|
||||||
|
build flags: Assistant Webapp Pairing Testsuite S3(multipartupload)(storageclasses) WebDAV Inotify DBus DesktopNotify ConcurrentOutput TorrentParser MagicMime Feeds Quvi
|
||||||
|
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 SHA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 SHA1E SHA1 MD5E MD5 WORM URL
|
||||||
|
remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav tahoe glacier ddar hook external
|
||||||
|
Initialized empty Git repository in /home/matthew/test-git-annex/a/.git/
|
||||||
|
init ok
|
||||||
|
(recording state in git...)
|
||||||
|
add test ok
|
||||||
|
(recording state in git...)
|
||||||
|
commit
|
||||||
|
[master (root-commit) ffcf48d] git-annex in matthew@thorium:~/test-git-annex/a
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
create mode 120000 test
|
||||||
|
ok
|
||||||
|
Cloning into 'b'...
|
||||||
|
done.
|
||||||
|
(merging origin/git-annex into git-annex...)
|
||||||
|
commit (recording state in git...)
|
||||||
|
|
||||||
|
On branch master
|
||||||
|
Your branch is up-to-date with 'origin/master'.
|
||||||
|
nothing to commit, working tree clean
|
||||||
|
ok
|
||||||
|
pull origin
|
||||||
|
ok
|
||||||
|
push origin
|
||||||
|
Counting objects: 3, done.
|
||||||
|
Delta compression using up to 4 threads.
|
||||||
|
Compressing objects: 100% (3/3), done.
|
||||||
|
Writing objects: 100% (3/3), 409 bytes | 0 bytes/s, done.
|
||||||
|
Total 3 (delta 0), reused 0 (delta 0)
|
||||||
|
To /home/matthew/test-git-annex/a
|
||||||
|
* [new branch] git-annex -> synced/git-annex
|
||||||
|
ok
|
||||||
|
group here ok
|
||||||
|
(recording state in git...)
|
||||||
|
commit
|
||||||
|
On branch master
|
||||||
|
nothing to commit, working tree clean
|
||||||
|
ok
|
||||||
|
group here ok
|
||||||
|
(recording state in git...)
|
||||||
|
forget git-annex (recording state in git...)
|
||||||
|
ok
|
||||||
|
(recording state in git...)
|
||||||
|
commit
|
||||||
|
On branch master
|
||||||
|
Your branch is up-to-date with 'origin/master'.
|
||||||
|
nothing to commit, working tree clean
|
||||||
|
ok
|
||||||
|
pull origin
|
||||||
|
remote: Counting objects: 3, done.
|
||||||
|
remote: Compressing objects: 100% (3/3), done.
|
||||||
|
remote: Total 3 (delta 0), reused 0 (delta 0)
|
||||||
|
Unpacking objects: 100% (3/3), done.
|
||||||
|
From /home/matthew/test-git-annex/a
|
||||||
|
e9a879d..000eb8e git-annex -> origin/git-annex
|
||||||
|
ok
|
||||||
|
(merging origin/git-annex into git-annex...)
|
||||||
|
(recording state in git...)
|
||||||
|
(recording state in git...)
|
||||||
|
push origin
|
||||||
|
Counting objects: 11, done.
|
||||||
|
Delta compression using up to 4 threads.
|
||||||
|
Compressing objects: 100% (10/10), done.
|
||||||
|
Writing objects: 100% (11/11), 1.03 KiB | 0 bytes/s, done.
|
||||||
|
Total 11 (delta 3), reused 0 (delta 0)
|
||||||
|
To /home/matthew/test-git-annex/a
|
||||||
|
+ e9a879d...00986fa git-annex -> synced/git-annex (forced update)
|
||||||
|
ok
|
||||||
|
(merging synced/git-annex into git-annex...)
|
||||||
|
(recording state in git...)
|
||||||
|
commit
|
||||||
|
On branch master
|
||||||
|
nothing to commit, working tree clean
|
||||||
|
ok
|
||||||
|
commit
|
||||||
|
On branch master
|
||||||
|
Your branch is up-to-date with 'origin/master'.
|
||||||
|
nothing to commit, working tree clean
|
||||||
|
ok
|
||||||
|
pull origin
|
||||||
|
remote: Counting objects: 3, done.
|
||||||
|
remote: Compressing objects: 100% (3/3), done.
|
||||||
|
remote: Total 3 (delta 0), reused 0 (delta 0)
|
||||||
|
Unpacking objects: 100% (3/3), done.
|
||||||
|
From /home/matthew/test-git-annex/a
|
||||||
|
+ 000eb8e...965b6af git-annex -> origin/git-annex (forced update)
|
||||||
|
ok
|
||||||
|
(merging origin/git-annex into git-annex...)
|
||||||
|
A IS IN GROUP:
|
||||||
|
ga
|
||||||
|
B IS IN GROUP:
|
||||||
|
"""]]
|
||||||
|
|
||||||
|
### Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders)
|
||||||
|
|
||||||
|
Yes, git-annex is slowly replacing all of my other sync and backup systems I've cobbled together over the years.
|
Loading…
Reference in a new issue