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

This commit is contained in:
Joey Hess 2013-10-23 15:16:15 -04:00
commit 6cbf3db1d0
13 changed files with 416 additions and 0 deletions

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="http://olivier.mehani.name/"
nickname="olivier-mehani"
subject="comment 10"
date="2013-10-23T03:30:17Z"
content="""
Right, I actually have 4.20131023-g9898139. This makes more sense.
"""]]

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="http://olivier.mehani.name/"
nickname="olivier-mehani"
subject="comment 8"
date="2013-10-23T03:00:58Z"
content="""
I just tried installing git-annex using Cabal today, but only got git-annex-4.20131002, even from source, which seems to predate your last comment, and no other branch seem to provide the yesod fix. Should I get the source from somewhere else than kitenet to try this out (if you think it is in shape to be tested)?
"""]]

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="http://olivier.mehani.name/"
nickname="olivier-mehani"
subject="comment 9"
date="2013-10-23T03:03:30Z"
content="""
Strike that. It actually works. I could create the ~/annex store, and adding a remote also seems to work (I'm on a hotel Wi-Fi at the moment, so I fear the ssh connection will fail, but nothing to do with git-annex).
"""]]

View file

@ -0,0 +1,287 @@
### Please describe the problem.
I use both the assistant and the command line. Unfortunately I often end up
in a state where I cannot do a "git annex sync" (it fails as described below)
and I have to use the assistant to synchronize things to make the sync work. I
would like to know how to do the same thing using only the command line.
### What steps will reproduce the problem?
This problem involves two repos: a local, indirect mode, manual group, repo, and
a ssh remote archive group bare repo (with full git annex available
remotely). The local repo is "top" and the remote one is "mini_archive".
I start with the assistant not running, and the two repos in sync. Note that the
remote server cannot directly contact the local repo.
local:
schmitta@top ~/D/annex (master)> git annex sync
commit
ok
pull mini_archive
ok
remote:
schmitta@mini ~/a/archive> git annex sync
commit
ok
I then add a file locally and try to sync, getting a problem on mini_archive:
schmitta@top ~/D/annex (master)> git annex add videos/Minecraft/Icy\ and\ FlowerChild\ Play\ -\ Better\ Than\ Wolves\ 3-qg6LVTcDl4Y.mp4
add videos/Minecraft/Icy and FlowerChild Play - Better Than Wolves 3-qg6LVTcDl4Y.mp4 (checksum...) ok
(Recording state in git...)
schmitta@top ~/D/annex (master)> git annex sync
commit
ok
pull mini_archive
ok
push mini_archive
Counting objects: 15, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (10/10), 1.01 KiB | 0 bytes/s, done.
Total 10 (delta 4), reused 0 (delta 0)
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
a5b002b..dde2626 master -> synced/master
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
failed
git-annex: sync: 1 failed
I try to merge and sync on the remote (I assume sync also does merge, but I'm
not sure).
schmitta@mini ~/a/archive> git annex merge
merge git-annex ok
schmitta@mini ~/a/archive> git annex sync
commit
ok
Back on the local machine, I still have the conflict.
schmitta@top ~/D/annex (master) [1]> git annex sync
commit
ok
pull mini_archive
ok
push mini_archive
Counting objects: 7, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 513 bytes | 0 bytes/s, done.
Total 5 (delta 1), reused 0 (delta 0)
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
failed
git-annex: sync: 1 failed
From this state, the only way to resolve things is to launch the web app. It
tells me "synced with mini_archive" (and it starts uploading the new file). Then
on the server there is something to merge. (I haven't waited for the file to
finish uploading in this case.)
schmitta@mini ~/a/archive> git annex merge
merge git-annex (merging refs/synced/1cdfb490-0660-41fb-b7ce-74b89abb9aac/git-annex into git-annex...)
ok
schmitta@mini ~/a/archive> git annex sync
commit
ok
and I can then sync on the local repo:
schmitta@top ~/D/annex (master) [1]> git annex sync
commit
ok
pull mini_archive
From ssh://git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive
8f39d4c..cb7f6c3 git-annex -> mini_archive/git-annex
ok
Note that I need to do the remote merge for things to work. After the file has
finished uploading, I get back in a conflict:
schmitta@top ~/D/annex (master)> git annex sync
commit
ok
pull mini_archive
ok
push mini_archive
Total 0 (delta 0), reused 0 (delta 0)
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
failed
git-annex: sync: 1 failed
If I disable and re-enable the sync on the server (forcing a sync), I still have
a conflict locally:
schmitta@top ~/D/annex (master) [1]> git annex sync
commit
ok
pull mini_archive
ok
push mini_archive
Total 0 (delta 0), reused 0 (delta 0)
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
failed
git-annex: sync: 1 failed
It only get solved by doing a merge on the server:
schmitta@mini ~/a/archive> git annex merge
merge git-annex (merging refs/synced/1cdfb490-0660-41fb-b7ce-74b89abb9aac/git-annex into git-annex...)
(Recording state in git...)
ok
schmitta@top ~/D/annex (master) [1]> git annex sync
commit
ok
pull mini_archive
remote: Counting objects: 13, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 5 (delta 3), reused 0 (delta 0)
Unpacking objects: 100% (5/5), done.
From ssh://git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive
cb7f6c3..d177e1a git-annex -> mini_archive/git-annex
ok
(merging mini_archive/git-annex into git-annex...)
### What version of git-annex are you using? On what operating system?
Current version available on cabal:
schmitta@top ~/D/annex (master)> git annex version
git-annex version: 4.20131002
build flags: Assistant Webapp Pairing Testsuite S3 WebDAV FsEvents XMPP DNS Feeds Quvi
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: 3
default repository version: 3
supported repository versions: 3 4
upgrade supported from repository versions: 0 1 2
schmitta@mini ~/a/archive> git annex version
git-annex version: 4.20131002
build flags: Assistant Webapp Pairing Testsuite S3 WebDAV FsEvents XMPP DNS Feeds Quvi
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: 3
default repository version: 3
supported repository versions: 3 4
upgrade supported from repository versions: 0 1 2
### Please provide any additional information below.
Here is daemon.log. It mentions another repo which is an external
hard drive not plugged it at the moment. I'm skipping the file transmission
(...).
[[!format sh """
# 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
[2013-10-23 14:02:05 CEST] main: starting assistant version 4.20131002
[2013-10-23 14:02:05 CEST] TransferScanner: Syncing with hole, mini_archive
Already up-to-date.
fatal: '/Volumes/hole/annex/' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
(scanning...) [2013-10-23 14:02:06 CEST] Watcher: Performing startup scan
Already up-to-date.
Already up-to-date.
fatal: '/Volumes/hole/annex/' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
fatal: '/Volumes/hole/annex/' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
fatal: '/Volumes/hole/annex/' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
fatal: '/Volumes/hole/annex/' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
[2013-10-23 14:02:10 CEST] Committer: Committing changes to git
[2013-10-23 14:02:10 CEST] Pusher: Syncing with mini_archive
(Recording state in git...)
(started...) To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
8f39d4c..cb7f6c3 git-annex -> refs/synced/1cdfb490-0660-41fb-b7ce-74b89abb9aac/git-annex
a5b002b..dde2626 master -> refs/synced/1cdfb490-0660-41fb-b7ce-74b89abb9aac/master
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
Everything up-to-date
(gpg)
SHA256E-s608232213--d4d6e02e651b1d265ff1c041ee8e8c23db9d880140816d62b8cc82cee4db3a54.mp4
...
sent 608306626 bytes received 42 bytes 5133389.60 bytes/sec
total size is 608232213 speedup is 1.00
[2013-10-23 14:04:13 CEST] Transferrer: Uploaded Icy and F..cDl4Y.mp4
[2013-10-23 14:04:13 CEST] Pusher: Syncing with mini_archive
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
cb7f6c3..927cc1c git-annex -> refs/synced/1cdfb490-0660-41fb-b7ce-74b89abb9aac/git-annex
[2013-10-23 14:05:35 CEST] main: Syncing with mini_archive
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
remote: error: denying non-fast-forward refs/heads/synced/git-annex (you should pull first)
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
error: failed to push some refs to 'ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/'
Everything up-to-date
# End of transcript or log.
"""]]

View file

@ -0,0 +1,19 @@
[[!comment format=mdwn
username="http://joeyh.name/"
ip="64.134.31.139"
subject="comment 1"
date="2013-10-23T15:21:34Z"
content="""
<pre>
To ssh://schmitta@git-annex-**.**.**.**-schmitta_annex.2Farchive/~/annex/archive/
! [remote rejected] git-annex -> synced/git-annex (non-fast-forward)
</pre>
Since version 4.20130909, git-annex is supposed to have avoided this problem by forcing the push of the git-annex branch. If you run `git annex sync --debug`, you should see:
[2013-10-23 11:12:54 EDT] call: git [\"--git-dir=annex/.git\",\"--work-tree=annex\",\"push\",\"foo\",\"+git-annex:synced/git-annex\",\"master:synced/master\"]
The \"+\" flag before the branch name forces git push to update the remote branch even if it's not a fast-forward.
You should be able to verify if git-annex is doing that, and run the same git push command manually to investigate why it might not be working. I have not seen this problem since putting in that fix, and I saw it before. Perhaps your server has an old or broken version of git that ignores this flag, or some git configuration setting I am not aware of that prevents it from working.
"""]]

View file

@ -0,0 +1,20 @@
[[!comment format=mdwn
username="http://alan.petitepomme.net/"
nickname="Alan Schmitt"
subject="comment 2"
date="2013-10-23T16:21:30Z"
content="""
I think I found the problem, after much googling.
The command line you suggest is indeed tried, and rejected by the server.
The answer came from [here](http://stackoverflow.com/questions/253055/how-do-i-push-amended-commit-to-the-remote-git-repo) where it says (speaking of a forced push)
> Even this may not work as git allows remote repositories to refuse non-fastforward pushes at the far end by using the config variable 'receive.denynonfastforwards'.
Indeed this is set in my annex repository. Note that this is a local setting, and that repository was created by the assistant.
I removed this setting, and I can now push. Could the setting of this bit be a bug in the assistant?
In any case, thanks a lot for indicating where to look at.
"""]]

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="gueux"
ip="2a01:240:fe6d:0:8947:cf55:f955:49b9"
subject="same typo on Lion build"
date="2013-10-23T09:17:58Z"
content="""
Could you please fix this typo on the Lion build?
"""]]

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="http://alan.petitepomme.net/"
nickname="Alan Schmitt"
subject="comment 2"
date="2013-10-23T10:06:53Z"
content="""
Thank you for the suggestions and explanations. I'm using a manual repo and I find that it works quite well.
"""]]

View file

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="https://www.google.com/accounts/o8/id?id=AItOawkj7tMEJKcZpNXIFkHAAcNi5qJFSFyjn6o"
nickname="thissideup"
subject="comment 2"
date="2013-10-23T11:15:20Z"
content="""
I contacted the maintainer of the uuid-package and he fixed the issue in the current release, so everythings fine now. and: everything compiled beautifully.
But to answer your question: I tend to rather compile things myself if I don't find them (or a current enough version) in the repos - but that's purely personal. ;)
"""]]

View file

@ -0,0 +1,12 @@
[[!comment format=mdwn
username="https://www.google.com/accounts/o8/id?id=AItOawlEeLtIxQCU0qe4q5lbrZp8AcUSUUcRrkg"
nickname="Zach"
subject="comment 3"
date="2013-10-23T02:01:09Z"
content="""
The problem is not with a remote annex. The issue I am having is git-annex never finishes syncing.
Maybe a screenshot will help. http://i.imgur.com/9HSr8bl.png
It never gets passed the Startup scan.
"""]]

View file

@ -0,0 +1,12 @@
[[!comment format=mdwn
username="http://joeyh.name/"
ip="64.134.31.139"
subject="comment 3"
date="2013-10-23T15:27:40Z"
content="""
Your screenshot shows git-annex is in the process of adding 6244 files. Depending on the size of those files, it could take some time to read their contents in order to calculate a checksum and add them to the repository. This would not normally take hours, unless your disk is very slow or the files are extremely big.
You might get some useful information if you enable debugging (Configuration -> Preferences -> Enable debug logging) and look at the log.
(This is not \"syncing\" btw. You have not set up any other repository for it to sync data with.)
"""]]

View file

@ -1,3 +1,11 @@
I wanted to try out this probably great piece of software you wrote, alas I do not use a Debian distro with managed software menus (i.e. I use OpenBox), so I cannot simply open the assistant through my programs-menu. In fact, to do that I'd need the command to start the assistant so I can add it manually myself. Sadly, the man page did not gave me any advices... :(
Any chance to give me the terminal command to start the assistant?
***
edit: just to update the thread: everythings okay now. Thanks for this great program!
the commands (as posted by Paul):
git annex assistant
git annex webapp

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="http://alan.petitepomme.net/"
nickname="Alan Schmitt"
subject="comment 33"
date="2013-10-23T11:39:51Z"
content="""
I installed the haskell DBus library, but it's still not picking it up. Is there some additional option to pass to cabal, or is it supposed to find it automatically?
"""]]