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

This commit is contained in:
Richard Hartmann 2014-02-25 12:38:25 +01:00
commit 77648cead5
82 changed files with 1185 additions and 383 deletions

View file

@ -0,0 +1,12 @@
[[!comment format=mdwn
username="stp"
ip="84.56.21.11"
subject="New findings"
date="2014-02-24T12:28:03Z"
content="""
Another thing I found, which was annoying is that I have objects in my annex not tracked anywhere it seems.
\"git annex fsck --all\" complains about not having access to the object. \"git log --stat -S '$key'\" doesn't have any record. \"git annex fsck\" has no issues and \"git annex unused\" comes up empty too.
I'm not sure where these objects still reside or why how to remove this annoying failure.
So not only should \"git annex forget $key\" remove references from within all branches, but should also clean up the aforementioned loose objects, which are neither unused, nor available, nor referenced.
"""]]

View file

@ -0,0 +1,17 @@
When generating a view, there's now a way to reuse part of the directory
hierarchy of the parent branch. For example, `git annex view tag=* podcasts/=*`
makes a view where the first level is the tags, and the second level is
whatever `podcasts/*` directories the files were in.
Also, year and month metadata can be automatically recorded when
adding files to the annex. I made this only be done when annex.genmetadata
is turned on, to avoid polluting repositories that don't want to use metadata.
It would be nice if there was a way to add a hook script that's run
when files are added, to collect their metadata. I am not sure yet if
I am going to add that to git-annex though. It's already possible to do via
the regular git `post-commit` hook. Just make it look at the commit to see
what files were added, and then run `git annex metadata` to set their
metadata appropriately. It would be good to at least have an example of
such a script to eg, extract EXIF or ID3 metadata. Perhaps someone can
contribute one?

View file

@ -0,0 +1,23 @@
Turns out that in the last release I broke making box.com, Amazon S3 and
Glacier remotes from the webapp. Fixed that.
Also, dealt with changes in the haskell DAV library that broke support for
box.com, and worked around an exception handling bug in the library.
I think I should try to enhance the test suite so it can run live tests
on special remotes, which would at least have caught the some of these
recent problems...
----
Since metadata is tied to a particular key, editing an annexed file,
which causes the key to change, made the metadata seem to get lost.
I've now fixed this; it copies the metadata from the old version to the new
one. (Taking care to copy the log file identically, so git can reuse its
blob.)
That meant that `git annex add` has to check every file it adds to see if
there's an old version. Happily, that check is fairly fast; I benchmarked my
laptop running 2500 such checks a second. So it's not going to slow things
down appreciably.