diff options
Diffstat (limited to 'doc/bugs/unable_to_sync_complains_of_missing_git-upload_and_receive_pack.mdwn')
-rw-r--r-- | doc/bugs/unable_to_sync_complains_of_missing_git-upload_and_receive_pack.mdwn | 208 |
1 files changed, 0 insertions, 208 deletions
diff --git a/doc/bugs/unable_to_sync_complains_of_missing_git-upload_and_receive_pack.mdwn b/doc/bugs/unable_to_sync_complains_of_missing_git-upload_and_receive_pack.mdwn deleted file mode 100644 index 777c4f6e8..000000000 --- a/doc/bugs/unable_to_sync_complains_of_missing_git-upload_and_receive_pack.mdwn +++ /dev/null @@ -1,208 +0,0 @@ -### Please describe the problem. -Syncing two standalones: amd64 and armel. - -Sync works from armel to amd64. - -Sync fails (missing git-upload-pack, git-receive-pack) from amd64 to armel. - -### What steps will reproduce the problem? -git-annex sync :) - -### What version of git-annex are you using? On what operating system? -git-annex version: 5.20131224-g6ca5271 on both - -### Please provide any additional information below. - -#### on server "rose" (amd64) - -[[!format sh """ -$ git-annex version -git-annex version: 5.20131224-g6ca5271 -build flags: Assistant Webapp Pairing S3 WebDAV Inotify DBus XMPP Feeds Quvi TDFA -key/value backends: SHA256E SHA1E SHA512E SHA224E SHA384E SHA256 SHA1 SHA512 SHA224 SHA384 WORM URL -remote types: git gcrypt S3 bup directory rsync web webdav glacier hook -local repository version: 3 -default repository version: 3 -supported repository versions: 3 5 -upgrade supported from repository versions: 0 1 2 4 - -$ git-annex sync -(merging synced/git-annex into git-annex...) -commit ok -pull synology -ash: git-upload-pack: not found -fatal: Could not read from remote repository. - -Please make sure you have the correct access rights -and the repository exists. -failed -push synology -ash: git-receive-pack: not found -fatal: Could not read from remote repository. - -Please make sure you have the correct access rights -and the repository exists. - - Pushing to synology failed. - - (non-fast-forward problems can be solved by setting receive.denyNonFastforwards to false in the remote\'s git config) -failed -git-annex: sync: 2 failed -$ cat .git/config -[core] - repositoryformatversion = 0 - filemode = true - bare = false - logallrefupdates = true -[branch "master"] -[annex] - uuid = c0e4106e-2631-11e2-9749-1bfa37a61069 - version = 3 -[remote "synology"] - url = greg@server:/volume1/photo/ - fetch = +refs/heads/*:refs/remotes/synology/* - annex-ssh-options = "-i /home/greg/.ssh/annex.rose_rsa" - annex-uuid = ca735977-973c-44bc-9257-915b2c875e39 - -greg@rose:~/.ssh$ cat authorized_keys -command="/home/greg/.ssh/git-annex-shell" ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDT1yE96E/JQNPt0ziiNYJRvndCvLK4uG5h/SNYoAIBF1uH6L7VYAt3HWVqSyi3BcV70WDZ/yWgtNzbrcir46JpvEHMcvYaXLbANwoDGNjG/gsz7kP/8VUxZ6hG3P3ICuwnqVum5+rYXm6oj3xzWPfTRhhRoDZLOQdevSNpdGNaa/lSg8Vuq2suHwjQlQb8AIUuCZmS5cm6XwoUq/jJtN4LTuTPqMjzA6NkdhWM2Kigi9jPQBFborkYBPMphmZwBZiVnhsH1XpaOff+mP03D2gF/huC+b1vbWQstjuehUbY59rvJ4ijbOW8Uq2ep7dwLagmILtX5GbL+GS64pAn9sIP annex-DiskStation - -greg@rose:~/.ssh$ cat git-annex-shell -#!/bin/sh -set -e -exec /home/greg/bin/git-annex.linux/runshell git-annex-shell -c "$SSH_ORIGINAL_COMMAND" - -greg@rose:~/bin/git-annex.linux$ ls -bin gconvdir git-annex.MANIFEST git-core lib LICENSE README templates -etc git git-annex-shell git-receive-pack lib64 linker runshell usr -favicon.png git-annex git-annex-webapp git-upload-pack libdirs logo.svg shimmed -"""]] - -#### on "synology" (armel) - -[[!format sh """ -/volume1/downloads/git-annex.linux $ ./runshell -$ git-annex version -git-annex version: 5.20131224-g6ca5271 -build flags: Assistant Webapp Pairing Testsuite S3 WebDAV Inotify DBus XMPP 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 glacier hook -local repository version: 5 -default repository version: 3 -supported repository versions: 3 5 -upgrade supported from repository versions: 0 1 2 4 - -$ which git-receive-pack -/volume1/downloads/git-annex.linux/bin/git-receive-pack - -$ which git-upload-pack -/volume1/downloads/git-annex.linux/bin/git-upload-pack - -$ git-annex sync -commit (Recording state in git...) -ok -pull rose -From server:/home/greg/Media/Pictures/Photos - d761e6e..4454a51 git-annex -> rose/git-annex - c4f0719..a4c73e4 master -> rose/master -ok -push rose -Counting objects: 134, done. -Compressing objects: 100% (58/58), done. -Writing objects: 100% (58/58), 4.81 KiB | 0 bytes/s, done. -Total 58 (delta 38), reused 0 (delta 0) -warning: There are too many unreachable loose objects; run 'git prune' to remove them. -To greg@server:/home/greg/Media/Pictures/Photos - 4454a51..812c393 git-annex -> synced/git-annex -ok - -$ cat .git/config -[core] - repositoryformatversion = 0 - filemode = true - bare = true - logallrefupdates = true -[branch "master"] -[annex] - uuid = ca735977-973c-44bc-9257-915b2c875e39 - version = 5 - direct = true -[remote "rose"] - url = greg@server:/home/greg/Media/Pictures/Photos - fetch = +refs/heads/*:refs/remotes/rose/* - annex-ssh-options = "-i /var/services/homes/greg/.ssh/annex_rsa" - annex-trustlevel = trusted - annex-uuid = c0e4106e-2631-11e2-9749-1bfa37a61069 - -$ cat /volume1/homes/greg/.ssh/authorized_keys -...partial... -command="/var/services/homes/greg/.ssh/git-annex-shell" ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCYvOZK2rO+3cF1wxxxrXptZ/QbRaOy36p9RtFmE5MKxgBRJ7n/8nMfBGaj3KDXcdJG+dTUsmLY5VeULuM4omtfJrF2MFYZDw2N0Qgq1bnYZ+q4OlpHfI3h77dAxyvM1MXYJvewXsjh8XoQJYqE8Pj4C05YsAJrqQJqqQqVZceD4TPvbKgnQhQIE2mCVXfItucJv0TOOBmKguOQGUB4Jp00IvFsnxpCLDeLFIODjRpXQqcMX9cZ9/6OYLznTck/MdbA5KTev1gVwiGwtYFGqY/DJ7q6zqfE+UU2aKS/M0r0Qjvr2+Q4+CuzVYc+hPURC8phmdP+HjtFcVsEcpsl6p79 annex-rose - -/volume1/homes/greg/.ssh $ cd /volume1/homes/greg/.ssh/ -/volume1/homes/greg/.ssh -/volume1/homes/greg/.ssh $ ls -annex_rsa authorized_keys id_rsa known_hosts -annex_rsa.pub git-annex-shell id_rsa.pub -/volume1/homes/greg/.ssh $ cd /var/services/homes/greg/.ssh/ -/volume1/homes/greg/.ssh $ pwd -/var/services/homes/greg/.ssh - -/volume1/homes/greg/.ssh $ cat git-annex-shell -#!/bin/sh -set -e -exec /volume1/downloads/git-annex.linux/runshell git-annex-shell -c "$SSH_ORIGINAL_COMMAND" - -/volume1/downloads/git-annex.linux $ ls -LICENSE git-annex-shell linker -README git-annex-webapp logo.svg -bin git-annex.MANIFEST runshell -etc git-core shimmed -favicon.png git-receive-pack templates -gconvdir git-upload-pack usr -git lib -git-annex libdirs -"""]] - - - - - -### After some debugging with Joey... -12:24 < joeyh> git does not use annex-ssh-options -12:24 < joeyh> the way the assistant sets this up is it makes up a new hostname, and in .ssh/config, makes that hostname use the real domain name, and the key -12:25 < joeyh> there's clearly a bug here.. the assistant only does that when there is no passwordless ssh key already set up. But in this wacky way of installing git and git-annex on a server, it needs to always do it -12:26 < joeyh> probably the assistant should probe if ssh server git-receive-pack works, and if not, always set up its special config -12:26 < joeyh> alternatively, the standalone tarball could have an actual installation step, rather than just being unpacked - -Based on that I added (on the amd64/rose machine): -[[!format sh """ -greg@rose:~/.ssh$ cat config -Host synology - HostName yep.org #obviously redacted - IdentityFile /home/greg/.ssh/annex.rose_rsa - -$ git remote show -n synology -* remote synology - Fetch URL: greg@synology:/volume1/photo/ - Push URL: greg@synology:/volume1/photo/ - HEAD branch: (not queried) - Local ref configured for 'git push' (status not queried): - (matching) pushes to (matching) -"""]] - -Now, to do a simple test with git: - -[[!format sh """ -$ git remote show synology -git-annex-shell: git-shell failed -fatal: Could not read from remote repository. - -Please make sure you have the correct access rights -and the repository exists. -"""]] - -> [[done]]; `git push` and `git pull` don't use annex-ssh-options, -> and so that's not a good way to configure the dedicated key. -> Instead, set it up like the assistant does, with a dummy hostname in the -> url that is configured in .ssh/config to use the real domain and the -> dedicated key. --[[Joey]] |