This is where announcements of new releases, features, and other news is posted. git-annex users are recommended to subscribe to this page's RSS feed. Also, see security for security announcements.

RSS Atom Add a new post titled:

git-annex 7.20190129 released with these changes

  • initremote S3: When configured with versioning=yes, either ask the user to enable bucket versioning, or auto-enable it when built with aws-0.22.
  • enableremote S3: Do not let versioning=yes be set on existing remote, because when git-annex lacks S3 version IDs for files stored in the bucket, deleting them would cause data loss.
  • S3: Detect when version=yes but an exported file lacks a S3 version ID, and refuse to delete it, to avoid data loss.
  • S3: Send a Content-Type header when storing objects in S3, so exports to public buckets can be linked to from web pages. (When git-annex is built with MagicMime support.)
Posted Tue Jan 29 19:22:40 2019

git-annex 7.20190122 released with these changes

  • sync --content: Fix dropping unwanted content from the local repository.
  • sync --content: Support dropping local content that has reached an exporttree remote that is not untrusted (currently only S3 remotes with versioning).
  • init: When --version=5 is passed on a crippled filesystem, use a v5 direct mode repo as requested, rather than upgrading to v7 adjusted unlocked. (Fixes test suite on crippled filesystems.)
  • Some optimisations, including a 10x faster timestamp parser, a 7x faster key parser, and improved parsing and serialization of git-annex branch data. Many commands will run 5-15% faster.
  • Stricter parser for keys doesn't allow doubled fields or out of order fields.
  • The benchmark command, which only had some old benchmarking of the sqlite databases before, now allows benchmarking any other git-annex commands.
  • Support being built with ghc 8.6.3 (MonadFail).
  • Removed old code that cleaned up after a bug in git-annex versions 3.20111105-3.20111110. In the unlikely event that a repo was last touched by that ancient git-annex version, the descriptions of remotes would appear missing when used with this version of git-annex.
  • Improve uuid.log parser to preserve whitespace in repo descriptions.
  • Improve activity.log parser to not remove unknown values, allowing for future expansion.
  • addunused, merge, assistant: Avoid creating work tree files in subdirectories in an edge case where the key contains "/".
  • testremote: Support testing readonly remotes with the --test-readonly option.
  • Switch to using .git/annex/othertmp for tmp files other than partial downloads, and make stale files left in that directory when git-annex is interrupted be cleaned up promptly by subsequent git-annex processes.
  • The .git/annex/misctmp directory is no longer used and git-annex will delete anything lingering in there after it's 1 week old.
  • Estimated time to completion display shortened from eg "1h1m1s" to "1h1m".
  • Fix doubled progress display when downloading an url when -J is used.
  • unused: Update suggested git log message to see where data was previously used so it will also work with v7 unlocked pointer files.
  • importfeed: Better error message when downloading the feed fails.
  • Make test suite work better when the temp directory is on NFS.
  • webapp: Remove configurator for repository, since their webdav support is going away at the end of this January.
  • webapp: Remove configurator for gitlab, which stopped supporting git-annex some time ago.
  • Android: For armv71 architecture, use the armel build.
  • Windows: If 64 bit git is installed, use it when installing git-annex. (However, rsync still won't work and this is still not the documented way to install it.)
Posted Tue Jan 22 16:28:51 2019

git-annex 7.20181211 released with these changes

  • S3: Improve diagnostics when a remote is configured with exporttree and versioning, but no S3 version id has been recorded for a key.
  • findref: Support file matching options: --include, --exclude, --want-get, --want-drop, --largerthan, --smallerthan, --accessedwithin
  • Commands supporting --branch now apply file matching options --include, --exclude, --want-get, --want-drop to filenames from the branch. Previously, combining --branch with those would fail to match anything.
  • add, import, findref: Support --time-limit.
  • Add --branch option to git-annex find and mildly deprecate findref in favor of it.
  • webdav: When initializing, avoid trying to make a directory at the top of the webdav server, which could never accomplish anything and failed on nextcloud servers. (Reversion introduced in version 6.20170925.)
  • Fix a case where upgrade to v7 caused git to think that unlocked files were modified.
  • Fix bug upgrading from direct mode to v7: when files in the repository were already committed as v7 unlocked files elsewhere, and the content was present in the direct mode repository, the annexed files got their full content checked into git.
  • Fix bug that caused v7 unlocked files in a direct mode repository to get locked when committing.
Posted Tue Dec 11 20:34:04 2018

git-annex 7.20181205 released with these changes

  • Make bittorrent special remote work w/o btshowmetainfo installed when it was build with torrentparser. Thanks, Robert Schütz
  • When running youtube-dl to get a filename, pass --no-playlist.
  • Fix build without concurrent-output.
  • init: When a crippled filesystem causes an adjusted unlocked branch to be used, set repo version to 7, which it neglected to do before.
  • init: When on a crippled filesystem, and the git version is too old to use an adjusted unlocked branch, fall back to using direct mode.
  • info: When used with an exporttree remote, includes an "exportedtree" info, which is the tree last exported to the remote. During an export conflict, multiple values will be listed.
  • dropunused: When an unused object file has gotten modified, eg due to annex.thin being set, don't silently skip it, but display a warning and let --force drop it.
  • annex.cachecreds: New config to allow disabling of credentials caching for special remotes.
Posted Wed Dec 5 20:19:50 2018

Similar to the yearly git user survey, there is a 2018 git-annex user survey.

If you use git-annex, please take a few minutes to answer the questions!

Since git-annex is seeing increasing use to manage scientific data, the survey also includes some extra questions about that at the end.

Posted Sat Dec 1 15:46:38 2018

git-annex 7.20181121 released with these changes

  • git-annex-shell: Fix hang when transferring the same objects to two different clients at the same time. (Or when annex.pidlock is used, two different objects.)
  • Fixed some other potential hangs in the P2P protocol.
  • Fix bash completion of "git annex" to propertly handle files with spaces and other problem characters. (Completion of "git-annex" already did.)
  • Fix resume of download of url when the whole file content is already actually downloaded.
  • When an export conflict prevents accessing a special remote, be clearer about what the problem is and how to resolve it.
  • export, sync --content: Avoid unnecessarily trying to upload files to an exporttree remote that already contains the files.
  • smudge: When passed a file located outside the working tree, eg by git diff, avoid erroring out.
  • drop -J: Avoid processing the same key twice at the same time when multiple annexed files use it.
  • When a command is operating on multiple files and there's an error with one, try harder to continue to the rest. (As was already done for many types of errors including IO errors.)
  • Fixed a crash when using -J with ssh password prompts in --quiet/--json mode. Thanks to Yaroslav Halchenko and the DataLad&ReproNim team for helping to track down this bug.
  • Remove esqueleto dependency to allow upgrading other dependencies to newer versions. Thanks Sean Parsons.
  • Fix build with persistent-sqlite older than 2.6.3.
  • Updated stack.yaml to lts-12.19; added stack-lts-9.9.yaml to support old versions of stack.
Posted Wed Nov 21 18:24:39 2018

git-annex 6.20180626 is an important security fix release.

See the advisory for details about the security holes fixed in this release.

After upgrading git-annex, you should restart any git-annex assistant processes.

Several changes to git-annex's behavior had to be made as part of the security fixes:

  • A security fix has changed git-annex to refuse to download content from some special remotes when the content cannot be verified with a hash check. In particular URL and WORM keys stored on such remotes won't be downloaded. See the documentation of the configuration for how to deal with this if it affects your files.

  • A security fix has changed git-annex to only support http, https, and ftp URL schemes by default. You can enable other URL schemes, at your own risk, using

  • A related security fix prevents git-annex from connecting to http servers (and proxies) on localhost or private networks. This can be overridden, at your own risk, using

  • Setting annex.web-options no longer is enough to make curl be used, and youtube-dl is also no longer used by default. See the documentation of for details and how to enable them.

  • The annex.web-download-command configuration has been removed, use annex.web-options instead.

Posted Tue Jun 26 16:00:19 2018

Similar to the yearly git user survey, there is a 2015 git-annex user survey.

If you use git-annex, please take a few minutes to answer the questions!

Posted Mon Oct 19 20:05:12 2015

Similar to the yearly git user survey, I am doing a 2013 git-annex user survey.

If you use git-annex, please take a few minutes to answer my questions!

Posted Fri Nov 22 17:17:21 2013

Thanks to my recent successful git-annex crowdfunding campaign, $1000 has been set aside to award others for their contributions to git-annex by the end of 2013. This is not a lot of money, but I hope that the reward and recognition will encourage some more people to work on git-annex.

You don't need to know Haskell! You could contribute some interesting and useful special remote hooks, or write better documentation.

On the other hand, if you have learned Haskell, this might be your first chance to make some money with it! Some ideas for things to work on that would be particularly award-worthy:

  • Port git-annex to IOS, using ghc-ios. I don't plan to ever do this myself, but you could make it happen.
  • Get the git-annex assistant working in Windows, building on the existing port to Windows. Otherwise, this is on my roadmap for February.
  • Solve existing bugs or todo items. There are more than I can keep up with.

The amount of the awards will vary depending on the size of the contribution. Since this is getting started later than is ideal, I reserve the right to extend it past the end of the year if I don't get enough participants.

If you'd like to participate in this program, just email me at --Joey

Posted Thu Oct 10 22:02:33 2013

git-annex will be briefly presented at FOSDEM, on Sunday February 4th at 15:40. Details.

Thanks to Richard Hartmann for making this presentation.

Posted Sat Feb 4 18:30:28 2012

Christophe-Marie Duquesne has just announced Sharebox, a FUSE filesystem relying on git-annex:

What are your goals?  
Seamless synchronization "à la dropbox".  
Ability to use with big binary files such as mp3/movies.  
Entirely decentralized.  
Don't use unnecessary space  
Keep it simple: avoid special VCS commands and keep a filesystem  
interface as much as possible.

While still alpha, this is promising. --Joey

Posted Thu Mar 31 18:06:14 2011

Linux Weekly News has a nice article on git-annex in it this week.

Posted Thu Dec 9 15:35:07 2010