Package: git-annex Version: 3.20121211 Severity: normal As described in #696313 I am trying to use a annex on a VFAT USB drive.
A small number of files in the annex cannot be copied to VFAT because the path contains a "\" (which is invalid in a FAT filesystem). $ git annex copy --to=usbdrive 'Ministry - Rio Grande Blood/03-Gangreen (w\ Sgt. Major).ogg' copy Ministry - Rio Grande Blood/03-Gangreen (w\ Sgt. Major).ogg (to usbdrive...) SHA256E-s4796874--\a91e4e04f60b9afe41224e32e87d07de6a09c92f85891d2cccaadbfc33b8bf31.ogg 32768 0% 0.00kB/s 0:00:00 rsync: open "/media/IanCampbell/music.annex/annex/tmp/SHA256E-s4796874--\a91e4e04f60b9afe41224e32e87d07de6a09c92f85891d2cccaadbfc33b8bf31.ogg" failed: Invalid argument (22) 4796874 100% 100.96MB/s 0:00:00 (xfer#1, to-check=0/1) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1070) [sender=3.0.9] sent 4797609 bytes received 31 bytes 9595280.00 bytes/sec total size is 4796874 speedup is 1.00 failed git-annex: copy: 1 failed I expect this is because sha256sum quotes the checksum if the filename contains certain characters: $ sha256sum 'Ministry - Rio Grande Blood/03-Gangreen (w\ Sgt. Major).ogg' \a91e4e04f60b9afe41224e32e87d07de6a09c92f85891d2cccaadbfc33b8bf31 Ministry - Rio Grande Blood/03-Gangreen (w\\ Sgt. Major).ogg This isn't mentioned in the sha256sum info page but it is mentioned in the md5sum page, both utilities are compiled from the same md5sum.c source file in coreutils. The info page says: For each FILE, `md5sum' outputs the MD5 checksum, a flag indicating a binary or text input file, and the file name. If FILE contains a backslash or newline, the line is started with a backslash, and each problematic character in the file name is escaped with a backslash, making the output unambiguous even in the presence of arbitrary file names. If FILE is omitted or specified as `-', standard input is read. A "git annex copy --to usbdrive --auto" fails for 102 files, I can find 100 with a \ in the filename. The other two have files ending in '.?.ogg' and '.".ogg' which g-a appears to treat as part of the extension for SHA256E purposes: $ git annex copy --to=usbdrive 'Hermano - Dare I Say/05-Is This O.K.?.ogg' copy Hermano - Dare I Say/05-Is This O.K.?.ogg (to usbdrive...) SHA256E-s4220373--354e439a9212268e21b36843ed48f835183472636932eef042739e4755476d59.?.ogg 32768 0% 0.00kB/s 0:00:00 rsync: open "/media/IanCampbell/music.annex/annex/tmp/SHA256E-s4220373--354e439a9212268e21b36843ed48f835183472636932eef042739e4755476d59.?.ogg" failed: Invalid argument (22) 4220373 100% 153.60MB/s 0:00:00 (xfer#1, to-check=0/1) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1070) [sender=3.0.9] sent 4221037 bytes received 31 bytes 2814045.33 bytes/sec total size is 4220373 speedup is 1.00 failed git-annex: copy: 1 failed $ git annex copy --to=usbdrive 'Queens Of The Stone Age - Lullabies To Paralyze/13-"You Got A Killer Scene There, Man...".ogg' copy Queens Of The Stone Age - Lullabies To Paralyze/13-"You Got A Killer Scene There, Man...".ogg (to usbdrive...) SHA256E-s4162784--d78e3b998894e8408a299a649a5718fea097a1969da012499a8df6219686ecff.".ogg 32768 0% 0.00kB/s 0:00:00 rsync: open "/media/IanCampbell/music.annex/annex/tmp/SHA256E-s4162784--d78e3b998894e8408a299a649a5718fea097a1969da012499a8df6219686ecff.".ogg" failed: Invalid argument (22) 4162784 100% 115.84MB/s 0:00:00 (xfer#1, to-check=0/1) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1070) [sender=3.0.9] sent 4163444 bytes received 31 bytes 8326950.00 bytes/sec total size is 4162784 speedup is 1.00 failed git-annex: copy: 1 failed Does g-a treat suffixes from the second last "." on purpose? I should probably be using the SHA256 (no E) backend anyway. Before I used git-annex I used a home grown script to convert my .flac files to .ogg on my FAT device. That script ended up substituting everything in ":/\\?*\"\|" for something safe. I munged my filenames to avoid all of these. Ian. -- System Information: Debian Release: wheezy/sid APT prefers testing APT policy: (990, 'testing'), (500, 'stable-updates'), (500, 'unstable'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-4-amd64 (SMP w/4 CPU cores) Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages git-annex depends on: ii curl 7.26.0-1 ii git 1:1.7.10.4-1+wheezy1 ii libc6 2.13-37 ii libffi5 3.0.10-3 ii libgmp10 2:5.0.5+dfsg-2 ii libgnutls26 2.12.20-2 ii libgsasl7 1.8.0-2 ii libidn11 1.25-2 ii libpcre3 1:8.30-5 ii libxml2 2.8.0+dfsg1-7 ii libyaml-0-2 0.1.4-2 ii openssh-client 1:6.0p1-3 ii rsync 3.0.9-4 ii uuid 1.6.2-1.3 ii wget 1.13.4-3 ii zlib1g 1:1.2.7.dfsg-13 Versions of packages git-annex recommends: ii bind9-host 1:9.8.1.dfsg.P1-4.4 ii gnupg 1.4.12-6 ii lsof 4.86+dfsg-1 Versions of packages git-annex suggests: pn bup <none> pn graphviz <none> ii libnss-mdns 0.10-3.2 -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org