Merge branch 'master' of ssh://git-annex.branchable.com

This commit is contained in:
Joey Hess 2017-02-03 14:37:49 -04:00
commit b5e6d23242
No known key found for this signature in database
GPG key ID: C910D9222512E3C7
3 changed files with 105 additions and 0 deletions

View file

@ -0,0 +1,81 @@
### Please describe the problem.
Cannot copy content to the remote whenever its url is http and pushurl is ssh
### What version of git-annex are you using? On what operating system?
6.20170101+gitg93d69b1-1~ndall+1
### Please provide any additional information below.
Having a remote which has Read-only http url but ssh pushurl:
[[!format sh """
hopa:/tmp/tmp.uCP6SjbQYt/orig
$> cat .git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[annex]
uuid = 1c81ccbf-e814-44cb-b2a4-3aef93d159e4
version = 5
backends = MD5E
[remote "target1"]
url = http://localhost:8082/demoannex/.git
fetch = +refs/heads/*:refs/remotes/target1/*
pushurl = localhost:/home/yoh/.tmp/tmp.uCP6SjbQYt/public_html/demoannex
annex-ignore = false
annex-bare = false
annex-uuid = d3720112-3b83-450d-a30e-cda370bf5a13
push = master
push = git-annex
"""]]
copy seems to try to push via http url, not succeeding. Interestingly, without --fast option, it doesn't even give a meaningful error message -- just says that it fails to find the file at the remote end (here are both calls outputs):
[[!format sh """
hopa:/tmp/tmp.uCP6SjbQYt/orig
$> git annex copy --to target1 --debug --json --fast
[2017-02-03 09:58:09.433515455] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","show-ref","git-annex"]
[2017-02-03 09:58:09.43918477] process done ExitSuccess
[2017-02-03 09:58:09.43929589] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","show-ref","--hash","refs/heads/git-annex"]
[2017-02-03 09:58:09.443217439] process done ExitSuccess
[2017-02-03 09:58:09.444030163] chat: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","cat-file","--batch"]
[2017-02-03 09:58:09.444468521] chat: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","cat-file","--batch-check=%(objectname) %(objecttype) %(objectsize)"]
[2017-02-03 09:58:09.449625506] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","ls-files","--cached","-z","--"]
copying to non-ssh repo not supported
copying to non-ssh repo not supported
This could have failed because --fast is enabled.
{"command":"copy","note":"to target1...","success":false,"key":"MD5E-s0--d41d8cd98f00b204e9800998ecf8427e","file":"probe"}
git-annex: copy: 1 failed
$> git annex copy --to target1 --debug --json
[2017-02-03 09:57:51.713147198] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","show-ref","git-annex"]
[2017-02-03 09:57:51.717451798] process done ExitSuccess
[2017-02-03 09:57:51.717690883] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","show-ref","--hash","refs/heads/git-annex"]
[2017-02-03 09:57:51.721647463] process done ExitSuccess
[2017-02-03 09:57:51.72243661] chat: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","cat-file","--batch"]
[2017-02-03 09:57:51.722822231] chat: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","cat-file","--batch-check=%(objectname) %(objecttype) %(objectsize)"]
[2017-02-03 09:57:51.726838506] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","ls-files","--cached","-z","--"]
{"command":"copy","note":"not found","success":false,"key":"MD5E-s0--d41d8cd98f00b204e9800998ecf8427e","file":"probe"}
git-annex: copy: 1 failed
"""]]
So far we found the way to rectify it by providing value of pushurl as a remote..url value for that git annex call. But it would be more "kosher" if git annex itself respected pushurl in such cases.
### 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)
lots
[[!meta author="yoh"]]

View file

@ -0,0 +1,15 @@
Hello,
I use CrashPlan, a proprietary offsite backup system to backup a couple of git-annex repositories.
CrashPlan backups the symlinks as symlinks as well as the .git directory. So all data is backuped. However, restoring it tedious.
I identify a file that I want to restore, download it and get only the symlink. Now I can descent into the .git directory and get the correct blob the symlink points to.
Are there any simple strategies getting a specific file from a git-annex repo if you only have file-based view on the repo?
I can, of course, use direct mode, that would resolve this issue, but would prefer to use the safer indirect mode.
Thanks for any ideas!
Best!

View file

@ -0,0 +1,9 @@
[[!comment format=mdwn
username="http://schnouki.net/"
nickname="Schnouki"
avatar="http://cdn.libravatar.org/avatar/5f6406e9db28564121169f0051645b8c30a12a20ca7bc40287ac9bf2cd3ad283"
subject="comment 2"
date="2017-02-02T22:05:23Z"
content="""
+1. Can't upgrade the kernel on my NAS (Synology DS413j, running Linux 2.6.32...), so I'm stuck with git-annex 5.20150731...
"""]]