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.20190615 released with these changes

  • Fixed bug that caused git-annex to fail to add a file when another git-annex process cleaned up the temp directory it was using.
  • Makefile: Added install-completions to install target.
  • Added the ability to run one job per CPU (core), by setting, or using option --jobs=cpus or -Jcpus.
  • Honor preferred content of a special remote when exporting trees to it; unwanted files are filtered out of the tree that is exported.
  • Importing from a special remote honors its preferred content too; unwanted files are not imported. But, some preferred content expressions can't be checked before files are imported, and trying to import with such an expression will fail.
  • Don't try to import .git directories from special remotes, because git does not support storing git repositories inside a git repository.
  • Improve shape of commit tree when importing from unversioned special remotes.
  • init: When the repository already has a description, don't change it.
  • describe: When run with no description parameter it used to set the description to "", now it will error out.
  • Android: Improve installation process when the user's login shell is not bash.
  • When a remote is configured to be readonly, don't allow changing what's exported to it.
  • Renamed to because it is not really specific to the http protocol, also limiting eg, git-annex's use of ftp. The old name for the config will still work.
  • Add back support for ftp urls, which was disabled as part of the fix for security hole CVE-2018-10857 (except for configurations which enabled curl and bypassed public IP address restrictions). Now it will work if allowed by
  • Avoid a delay at startup when concurrency is enabled and there are rsync or gcrypt special remotes, which was caused by git-annex opening a ssh connection to the remote too early.
Posted Sat Jun 15 16:39:58 2019

git-annex 7.20190507 released with these changes

  • Fix reversion in last release that caused wrong tree to be written to remote tracking branch after an export of a subtree.
  • Improved locking when multiple git-annex processes are writing to the .git/index file
Posted Tue May 7 17:06:39 2019

git-annex 7.20190503 released with these changes

  • adb special remote supports being configured with importtree=yes, to allow git-annex import of files from an Android device. This can be combined with exporttree=yes and git-annex export used to send changes back to the Android device.
  • S3 special remote supports being configured with importtree=yes, to allow git-annex import of files from a S3 bucket. This can be combined with exporttree=yes and git-annex export used to send changes back to the S3 bucket.
  • S3: When versioning is enabled on a bucket, importing from it will import old versions of files that were written to the bucket as well as the current versions. A git history is synthesized to reflect the way the bucket changed over time.
  • Fix bug that caused importing from a special remote to repeatedly download unchanged files when multiple files in the remote have the same content.
  • Made git-annex sync --content much faster when all the remotes it's syncing with are export/import remotes.
  • sync: When listing contents on an import remote fails, proceed with other syncing instead of aborting.
  • renameremote: New command, changes the name that is used to enable a special remote. Especially useful when you want to reuse the name of an old remote for something new.
  • Drop support for building with aws older than 0.14.
  • info: Show when a remote is configured with importtree.
  • Added mimeencoding= term to annex.largefiles expressions. This is probably mostly useful to match non-text files with eg "mimeencoding=binary"
  • git-annex matchexpression: Added --mimeencoding option.
Posted Fri May 3 16:49:12 2019

git-annex 7.20190322 released with these changes

  • New feature allows importing from special remotes, using git annex import branch:subdir --from remote
  • Directory special remote supports being configured with importree=yes, to allow git-annex import of files from the directory. This can be combined with exporttree=yes and git-annex export used to send changes back to the same directory.
  • Remote tracking branches are updated when importing and exporting to special remotes, in ways analagous to how git fetch and git push do.
  • export: Deprecated the --tracking option. Instead, users can configure remote.<name>.annex-tracking-branch themselves.
  • sync --content: When remote.<name>.annex-tracking-branch is configured, import from special remotes.
  • sync, assistant: --no-push and remote.<name>.annex-push prevent exporting trees to special remotes.
  • Fix storage of metadata values containing newlines. (Reversion introduced in version 7.20190122.)
  • Sped up git-annex export in repositories with lots of keys.
  • S3: Support enabling bucket versioning when built with aws-0.21.1.
  • stack.yaml: Build with aws-0.21.1
  • Fix cleanup of git-annex:export.log after git-annex forget --drop-dead.
  • Makefile: Added install-home target which installs git-annex into the HOME directory.
  • addurl --file: Fix a bug that made youtube-dl be used unneccessarily when adding an html url that does not contain any media.
  • Add -- before %f in the smudge/clean filter configuration, to support filenames starting with dashes. (To update the config of existing repositories, you can re-run git-annex init.)
  • fsck: Detect situations where annex.thin has caused data loss to the content of locked files.
  • Removed bundled gpg from the Linux standalone build and OSX dmg, because gpg now always wants to use gpg-agent, and shipping such a daemon in those is not a good idea.
  • import: Let --force overwrite symlinks, not only regular files.
  • Android: Fix typo of name of armv7l in installation script. Thanks, 4omecha.
  • S3: Added protocol= initremote setting, to allow https to be used on a non-standard port.
Posted Fri Mar 22 17:57:27 2019

git-annex 7.20190219 released with these changes

  • init: Fix bug when direct mode needs to be enabled on a crippled filesystem, that left the repository in indirect mode.
  • Fix false positive in export conflict detection, that occurred when the same tree was exported by multiple clones. Previous fix was incomplete.
  • When key-based retrieval from a S3 remote with exporttree=yes appendonly=yes fails, fall back to trying to retrieve from the exported tree. This allows downloads of files that were exported to such a remote before versioning was enabled on it.
  • Fix path separator bug on Windows that completely broke git-annex since version 7.20190122.
  • Improved speed of S3 remote by only loading S3 creds once.
  • Display progress bar when getting files from export remotes.
  • Fix race in cleanup of othertmp directory that could result in a failure attempting to access it.
  • fromkey: Made idempotent.
  • fromkey: Added --json.
  • fromkey --batch output changed to support using it with --json. The old output was not parseable for any useful information, so this is not expected to break anything.
  • Avoid performing repository fixups for submodules and git-worktrees when there's a .noannex file that will prevent git-annex from being used in the repository.
  • init: Don't let --force be used to override a .noannex file, instead the user can just delete the file.
  • webdav: Exporting files with '#' or '?' in their name won't work because urls get truncated on those. Fail in a better way in this case, and avoid failing when removing such files from the export, so after the user has renamed the problem files the export will succeed.
  • On Windows, avoid using rsync for local copies, since rsync is not always available there.
  • Added NetworkBSD build flag to deal with Network.BSD moving to a new package.
Posted Tue Feb 19 16:20:50 2019

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 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