Please describe the problem.

After initializing a (indirect) repository on my Linux PC and git cloning it on a FAT32 formatted USB drive (direct mode), git annex sync worked fine. After using it on a Windows system (git annex watch), I took it back to the Linux machine. Now doing git annex sync on the USB drive repository lead to:

(usb drive) $ git annex sync
commit  ok

  There are no commits yet in the currently checked out branch, so cannot merge any remote changes into it.
failed
pull PC 
....
merge: refs/remotes/PC/annex/direct/master - not something we can merge
merge: refs/remotes/PC/synced/master - not something we can merge
failed
(merging origin/git-annex into git-annex...)
git-annex: sync: 2 failed
$ git fsck
Checking object directories: 100% (256/256), done.
$ git annex fsck
fsck blah.pdf (checksum...) ok
fsck foo.pdf (checksum...) ok
fsck bar.pdf (checksum...) ok
...
(recording state in git...)

Note that for some reason it mentions the ref refs/remotes/PC/annex/direct/master - which doesn't exist, because the Linux PC repo is in indirect mode.

What steps will reproduce the problem?

  1. git init / git annex init on a ext* drive under Linux
  2. git sync it to a FAT32-formatted (USB) drive
  3. git annex init on the USB drive
  4. add each others as remote
  5. git sync each other - works fine
  6. Change into a Windows system
  7. git annex watch inside the git annex repository under Windows
  8. add some files, they are committed (says daemon.log)
  9. Ctrl+C git annex watch, unmount drive...
  10. Change back to a Linux system
  11. git annex sync from the annex repository on USB

What version of git-annex are you using? On what operating system?

Gentoo:

git-annex version: 6.20170611-gb493ac8d3
build flags: Assistant Webapp Pairing Testsuite S3(multipartupload)(storageclasses) WebDAV Inotify DBus DesktopNotify ConcurrentOutput TorrentParser MagicMime Feeds Quvi
dependency versions: aws-0.14.1 bloomfilter-2.0.1.0 cryptonite-0.20 DAV-1.3.1 feed-0.3.11.1 ghc-8.0.1 http-client-0.4.31.1 persistent-sqlite-2.6 torrent-10000.0.0 uuid-1.3.12 yesod-1.4.3
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
local repository version: 5
supported repository versions: 3 5 6
upgrade supported from repository versions: 0 1 2 3 4 5
operating system: linux x86_64

Windows 10:

git-annex version: 6.20170611-gb493ac8
build flags: Assistant Webapp Pairing Testsuite S3(multipartupload)(storageclasses) WebDAV ConcurrentOutput TorrentParser Feeds Quvi
dependency versions: aws-0.14.0 bloomfilter-2.0.1.0 cryptonite-0.7 DAV-1.3.1 feed-0.3.11.1 ghc-7.10.2 http-client-0.4.31.1 persistent-sqlite-2.2 torrent-10000.0.0 uuid-1.3.12 yesod-1.4.3
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
local repository version: 5
supported repository versions: 3 5 6
upgrade supported from repository versions: 2 3 4 5
operating system: mingw32 i386

Please provide any additional information below.

# daemon.log from git watch
[2017-08-16 13:16:01.6773524] main: starting watch version 6.20170611-gb493ac8
(scanning...) [2017-08-16 13:16:02.0049693] Watcher: Performing startup scan
(started...) 
[2017-08-16 13:16:03.0007698] Committer: Committing changes to git
(recording state in git...)
[2017-08-16 13:16:51.420494] Committer: Adding annex3.txt
add annex3.txt ok
[2017-08-16 13:16:51.771892] Committer: Committing changes to git
(recording state in git...)


# End of transcript or log.

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)

Used it under only-linux before. I especially like the location tracking.

Also tried using special remotes (mega.nz) with encryption - although I was very confused at first that you need the private key for the hybrid approach. After some reading I think I need sharedpubkey? (I just wanna use it for myself, but don't wanna insert the smartcard where my private key is stored every time for sending the files to the remote).