Please describe the problem.
The assistant seems to only sync files and not directories, so empty directories will not be synced.
What steps will reproduce the problem?
- Create an empty directory on HostA
- See that nothing gets synced (daemon.log is silent) and the directory doesn't exist on the other HostB
- Create an empty file inside the empty directory on HostA
- See that now HostB has the empty file inside the directory
I'm sure this comes directly from the git behavior but is at least surprising for a direct mode repository using the assistant.
What version of git-annex are you using? On what operating system?
$ git annex version
git-annex version: 4.20130516.1
build flags: Assistant Webapp Pairing Testsuite S3 WebDAV Inotify DBus XMPP
local repository version: 4
default repository version: 3
supported repository versions: 3 4
upgrade supported from repository versions: 0 1 2
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04.2 LTS
Release: 12.04
Codename: precise
This behaviour is indeed very confusing when one attempts to use git-annex with the assistant only, without thinking about the underlying machinery. Having the assistant automatically put a .gitignore file in empty directories is a possible solution, but maybe printing a warning in the log when the watcher sees an empty directory could be an unobtrusive and helpful solution? (At least it would have helped me)