Please describe the problem.
git annex installer on Windows only installs git-annex-licenses.txt git-annex-uninstall.exe git-annex.exe
This makes git-annex unusable over ssh (Windows box runs cygwin sshd).
What steps will reproduce the problem?
What version of git-annex are you using? On what operating system?
Windows 7 64bit
git annex version git-annex version: 5.20140421-g78d6aa1 build flags: Assistant Webapp Webapp-secure Pairing Testsuite S3 WebDAV DNS Feeds Quvi TDFA CryptoHash key/value backends: SHA256E SHA1E SHA512E SHA224E SHA384E SKEIN256E SKEIN512E SHA256 SHA1 SHA512 SHA224 SHA384 SKEIN256 SKEIN512 WORM URL remote types: git gcrypt S3 bup directory rsync web webdav tahoe glacier hook external
Please provide any additional information below.
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
# End of transcript or log.
Hmm, I don't understand the double disk space issue. If direct mode is used, files are stored once, right?
I tried copying git-annex.exe to git-annex-shell.exe, but it doesn't behave as git-annex-shell:
git-annex-shell -c configlist git-annex-shell.exe: unknown command configlist
However, it's still not usable remotely over ssh:
git annex sync kpf
git-annex-shell: git: createProcess: invalid argument (Invalid argument)
Remote kpf does not have git-annex installed; setting annex-ignore
OK thought I'd use it with annex-ignore set, but:
(to kpf...) git-annex-shell: git: createProcess: invalid argument (Invalid argument) rsync: connection unexpectedly closed (0 bytes received so far) [sender] rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.0]
git-annex: copy: 1 failed
For reference, here's the .git/config section.
I can either set receivepack/uploadpack like below or add /cygdrive/c/Program Files (x86)/Git/libexec/git-core to PATH in cygwin shell.
Also, if I set url to kp:/cygdrive/f/backup/f, git complains that it's not a git repository (msysgit doesn't understand cygwin stuff?)
Another data point. If I install cygwin's git (so references like kp:/cygdrive/f would be understood) and remove annex-ignore setting, I get:
Looks like hostname (kp) is taken as a command somehow.
Copying the
git-annex.exe
does work but you can also create a symlink and tell Windows to execute symlinks by doing the following.On the remote machine (the one you are connecting to)
Create a symlink:
Tell Windows to run files with no extension:
PATHEXT
add;.
A problem with rsync
Unfortunately I now get
Access is denied
andrsync: connection unexpectedly closed
. I think this is due to path issues on Windows. Trying rsync manually I need to use the/cygdrive/c/rest/of/path
syntax otherwise I getNo such file or directory.
I try to use SSH to connect to Win10 machine with annex repo. I am using the OpenSSH integrated into the Windows 10 (one you can install from Windows additional features thingy).
it didn't know git-annex-shell so i created symlink
and added ';.' to PATHEX
Currently git-annex-shell is found but i get error:
when i try to sync remote on that W10 machine
If you copy git-annex.exe to git-annex-shell.exe, it should work.
The installer doesn't do it, because doubling the installation size footprint for a feature that involves sshing into a Windows machine (not very common I suspect) didn't seem worth it.
That error message seems to indicate that git-annex does not realize it's being run with the git-annex-shell program name. When I run "git-annex -c configlist /path/to/repo" I get that error message; when I run git-annex-shell with the same parameters, I get the expected repository config output.
I'm guessing that the windows symlink thing you tried to use confuses the program path name lookup that it tries to do. I'm pretty sure that a copy of the file would work.