Merge branch 'master' into bloom

Conflicts:
	Command/Commit.hs
	debian/changelog
This commit is contained in:
Joey Hess 2012-03-14 12:41:48 -04:00
commit 342fc28437
5 changed files with 33 additions and 3 deletions

View file

@ -22,7 +22,8 @@ seek = [withNothing start]
start :: CommandStart
start = next $ next $ do
Annex.Branch.commit "update"
runhook =<< (inRepo $ Git.hookPath "annex-content")
_ <- runhook =<< (inRepo $ Git.hookPath "annex-content")
return True
where
runhook (Just hook) = liftIO $ boolSystem hook []
runhook Nothing = return True

View file

@ -290,10 +290,13 @@ rsyncParamsRemote r sending key file = do
then return $ o ++ eparam ++ [dummy, File file]
else return $ o ++ eparam ++ [File file, dummy]
where
-- the rsync shell parameter controls where rsync
-- The rsync shell parameter controls where rsync
-- goes, so the source/dest parameter can be a dummy value,
-- that just enables remote rsync mode.
dummy = Param ":"
-- For maximum compatability with some patched rsyncs,
-- the dummy value needs to still contain a hostname,
-- even though this hostname will never be used.
dummy = Param "dummy:"
rsyncParams :: Git.Repo -> Annex [CommandParam]
rsyncParams r = do

1
debian/changelog vendored
View file

@ -18,6 +18,7 @@ git-annex (3.20120310) UNRELEASED; urgency=low
detect then it's too small for the number of keys in a repository.
* git-annex-shell: Runs hooks/annex-content after content is received
or dropped.
* Work around a bug in rsync (IMHO) introduced by openSUSE's SIP patch.
-- Joey Hess <joeyh@debian.org> Sat, 10 Mar 2012 14:03:22 -0400

View file

@ -0,0 +1,14 @@
Hi,
I have the following setup:
- normal git repository with website code.
- git annex repository to hold large set of binary data (pdfs, flashmovies, etc) that belongs to the site.
I use git annex so I (and other developers) don't need to copy 1.4Gb+ of binary data for every working copy. (Data that is mostly left untouched.) Using git annex copy --to=origin I can simply only add new additions to this media/binary repository, without first pulling all the data. So far so good.
When commits are pushed to a certain branch on the normal git repository, a post-receive hook exports (GIT_WORK_TREE=/data/site/ git checkout $branch -f) the updated repository to an apache documentroot. Thereby updating the staging server of the website.
My question is, how can I do the same thing for my git annex repository? Since post-receive fires on receiving the annex hashes, and not the actual files. Those are rsynced, and I cannot find a way to trigger an action after all files are copied by git annex via rsync.
Any tips?

View file

@ -0,0 +1,11 @@
[[!comment format=mdwn
username="http://joey.kitenet.net/"
nickname="joey"
subject="comment 1"
date="2012-03-14T16:23:25Z"
content="""
I've made git-annex-shell run the git `hooks/annex-content` after content is received or dropped.
Note that the clients need to be running at least git-annex version 3.20120227 , which runs git-annex-shell commit, which runs the hook.
"""]]