What steps will reproduce the problem?
hactar% mkdir demonstração
hactar% cd demonstração
hactar% cp ~/tmp/*(.) .
hactar% git init
Initialized empty Git repository in /tmp/demonstração/.git/
hactar% git annex init
init ok
(Recording state in git...)
hactar% git annex add .
add Equipment Consumption.ods (checksum...) ok
add Personal.vcard (checksum...) ok
add Trampo.vcard (checksum...) ok
add blah.txt (checksum...) ok
[ more git output ]
hactar% git commit -m initial
[master (root-commit) d16bafb] initial
42 files changed, 42 insertions(+)
[ more git output ]
hactar% cd /var/tmp
hactar% git clone ssh://localhost//tmp/demonstração demonstração
Cloning into 'demonstração'...
remote: Counting objects: 176, done.
remote: Compressing objects: 100% (134/134), done.
remote: Total 176 (delta 1), reused 0 (delta 0)
Receiving objects: 100% (176/176), 17.23 KiB, done.
Resolving deltas: 100% (1/1), done.
hactar% cd demonstração
hactar% git annex init
init ok
(Recording state in git...)
hactar% git annex status
supported backends: SHA256E SHA1E SHA512E SHA224E SHA384E SHA256 SHA1 SHA512 SHA224 SHA384 WORM URL
supported remote types: git S3 bup directory rsync web hook
trusted repositories: (merging origin/git-annex into git-annex...)
git-annex: fd:14: commitBuffer: invalid argument (invalid character)
failed
git-annex: status: 1 failed
What is the expected output? What do you see instead?
I expect that "git annex status" will complete successfuly and show information about all repositories. Instead of that I get the "git-annex: fd:14: commitBuffer: invalid argument (invalid character)" error above.
What version of git-annex are you using? On what operating system?
This is with Debian's git-annex_3.20121001_i386.deb installed on an Ubuntu 12.04 system. Using Ubuntu's original version (3.20120406) the error message is a bit different (here I used the name acentuação instead of demonstração):
trusted repositories: git-annex-shell: //tmp/acentuação: changeWorkingDirectory: does not exist (No such file or directory)
Command ssh ["-S","/var/tmp/acentua\231\227o/.git/annex/ssh/localhost","-o","ControlMaster=auto","-o","ControlPersist=yes","localhost","git-annex-shell 'configlist' '//tmp/acentua\195\167\195\163o'"] failed; exit code 1
I think this is the last unvalid utf-8 bug in git-annex. At least, the last one I hypothesized exists. It's in the union merge code. I will try to look at it again soon; the last 2 times I looked at that code I could not see an easy way to make it allow invalid utf-8 encoded data. --Joey
done, although I am no longer so sure this was the last utf-8 encoding bug.. --Joey
Ok, this is a mix of luser error and a bug.
I noticed that I wasn't providing a description in git annex init. So if I do "git annex init foo" in the first repository and "git annex init bar" in the clone, then git annex status works!
So the bug is actually that you need to provide a description in git annex init, even though the man page says a description will be generated otherwise.
(In my defense I hit the non-ACII characters bug with the git annex version in Ubuntu, and that one still has the same error even if a description is provided so this was fixed later).