Please describe the problem.
git annex get foo
does work.
echo "foo" | git annex get --batch
does not.
What version of git-annex are you using? On what operating system?
git-annex version: 8.20210223 build flags: Assistant Webapp Pairing Inotify DBus DesktopNotify TorrentParser MagicMime Feeds Testsuite S3 WebDAV dependency versions: aws-0.22 bloomfilter-2.0.1.0 cryptonite-0.26 DAV-1.3.4 feed-1.3.0.1 ghc-8.8.4 http-client-0.6.4.1 persistent-sqlite-2.10.6.2 torrent-10000.1.1 uuid-1.3.13 yesod-1.6.1.0 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 BLAKE2B256E BLAKE2B256 BLAKE2B512E BLAKE2B512 BLAKE2B160E BLAKE2B160 BLAKE2B224E BLAKE2B224 BLAKE2B384E BLAKE2B384 BLAKE2BP512E BLAKE2BP512 BLAKE2S256E BLAKE2S256 BLAKE2S160E BLAKE2S160 BLAKE2S224E BLAKE2S224 BLAKE2SP256E BLAKE2SP256 BLAKE2SP224E BLAKE2SP224 SHA1E SHA1 MD5E MD5 WORM URL X* remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav adb tahoe glacier ddar git-lfs httpalso borg hook external operating system: linux x86_64 supported repository versions: 8 upgrade supported from repository versions: 0 1 2 3 4 5 6 7 local repository version: 8
I use it on Debian 11
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 a wonderful tool! I use it for synchronising TB of data
A blank line means that the file's content is already present, or it is not an annexed file. This is documented under --batch in the man page of git-annex get.
I already see in the manual that blank line means the file is not in annex. But it is NOT the case here.
I do think it's is a bug. See the result of the following commands executed in a row:
You have added single quotes around the file name
Wasabi
, so you have told it to get a file with those quotes in its name. No such file exists.You do not need to single quote anything in the batch interface.
It is exactely the same with the following
Moreover, it would be strange that quote works with "info" but not with "get"
According to the git-annex info output,
Wasabi
is a directory.Since a directory is not an annexed file, git-annex get --batch will not get it, so it outputs a blank line. If you tell it to get a specific file within that directory, it will.
Since git-annex info --batch can operate on directories as well as on files, it does. That is the reason for the inconsistency.
Ok, using file name directly instead of parent directory is working.
Is there a good reason explaining why
git annex get <DIR>
works whereaseecho <DIR> | git annex get --batch
doesn't?Other features like --json when used with --batch would not work well if it recursed through directories. There would be no way to know which output corresponded with which input.
Ok thank you, i understand the reason.
Very good job by the way.