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.

RSS Atom Add a new post titled:

git-annex 6.20171018 released with these changes

  • add: Replace work tree file atomically on systems supporting hard links. Avoids a window where interrupting an add could result in the file being moved into the annex, with no symlink yet created.
  • webdav: Avoid unncessisarily creating the collection at the top of the repository when storing files there, since that collection is created by initremote. (This seems to work around some brokenness of the webdav server, which caused uploads to be very slow or sometimes fail.)
  • webdav: Make --debug show all webdav operations.
  • get -J/move -J/copy -J/mirror -J/sync -J: Avoid "transfer already in progress" errors when two files use the same key.
  • Konqueror desktop file location changed to one used by plasma 5. Thanks, Félix Sipma.
  • Avoid repeated checking that files passed on the command line exist.
  • Fix build with aws-0.17.
  • stack.yaml: Update to lts-9.9.
Posted Wed Oct 18 19:41:52 2017

git-annex 6.20171003 released with these changes

  • webdav: Improve error message for failed request to include the request method and path.
  • metadata: Added --remove-all.
  • Warn when metadata is inherited from a previous version of a file, to avoid the user being surprised in cases where that behavior is not desired or expected.
  • sync: Added --cleanup, which removes local and remote synced/ branches.
  • external: When the external special remote program crashed, a newline could be output, which messed up the expected output for --batch mode.
  • external: Avoid checking EXPORTSUPPORTED for special remotes that are not configured to use exports.
  • test: Fix reversion that made it only run inside a git repository.
  • copy, move: Behave same with --fast when sending to remotes located on a local disk as when sending to other remotes.
  • Fix process and file descriptor leak that was exposed when git-annex was built with ghc 8.2.1. Broke git-annex test on OSX due to running out of FDs, and may have also leaked in other situations.
  • info: Improve cleanup of stale transfer info files.
Posted Tue Oct 3 17:19:31 2017

git-annex 6.20170925 released with these changes

  • git-annex export: New command, can create and efficiently update exports of trees to special remotes.
  • Use git-annex initremote with exporttree=yes to set up a special remote for use by git-annex export.
  • Implemented export to directory, S3, and webdav special remotes.
  • External special remote protocol extended to support export. Developers of external special remotes should consider if export makes sense for them and add support.
  • sync, assistant: Update tracking exports.
  • Support building with feed-1.0, while still supporting older versions.
  • init: Display an additional message when it detects a filesystem that allows writing to files whose write bit is not set.
  • S3: Allow removing files from IA.
  • webdav: Checking if a non-existent file is present on triggered a bug in its webdav support that generates an infinite series of redirects. Deal with such problems by assuming such behavior means the file is not present.
  • webdav: Fix lack of url-escaping of filenames. Mostly impacted exports of filenames containing eg spaces.
  • webdav: Changed path used on webdav server for temporary files.
Posted Mon Sep 25 15:35:35 2017

Note this is a security fix release. A prompt upgrade is strongly recommended. Attacks using this security hole will involve the attacker either providing a ssh repository url to the user, or the user pulling from a git-annex repository provided by an attacker and then running git annex enableremote. For details about the security hole, see dashed ssh hostname security hole. CVE-2017-12976

git-annex 6.20170818 released with these changes

  • Security fix: Disallow hostname starting with a dash, which would get passed to ssh and be treated an option. This could be used by an attacker who provides a crafted repository url to cause the victim to execute arbitrary code via -oProxyCommand. (The same class of security hole recently affected git itself.)
  • git-annex.cabal: Deal with breaking changes in Cabal 2.0.
  • Fix build with QuickCheck 2.10.
  • fsck: Support --json.
  • move, copy: Support --batch.
  • Added GIT_ANNEX_VECTOR_CLOCK environment variable, which can be used to override the default timestamps used in log files in the git-annex branch. This is a dangerous environment variable; use with caution.
  • Fix a git-annex test failure when run on NFS due to NFS lock files preventing directory removal.
  • test: Avoid most situations involving failure to delete test directories, by forking a worker process and only deleting the test directory once it exits.
  • Disable http-client's default 30 second response timeout when HEADing an url to check if it exists. Some web servers take quite a long time to answer a HEAD request.
  • Added remote configuration settings annex-ignore-command and annex-sync-command, which are dynamic equivilants of the annex-ignore and annex-sync configurations.
  • Prevent spaces from being embedded in the name of new WORM keys, as that handing spaces in keys would complicate things like the external special remote protocol.
  • migrate: WORM keys containing spaces will be migrated to not contain spaces anymore.
  • External special remotes will refuse to operate on keys with spaces in their names. That has never worked correctly due to the design of the external special remote protocol. Display an error message suggesting migration.
  • Fix incorrect external special remote documentation, which said that the filename parameter to the TRANSFER command could not contain spaces. It can in fact contain spaces. Special remotes implementors that relied on that may need to fix bugs in their special remotes.
  • Fix the external special remotes git-annex-remote-ipfs, git-annex-remote-torrent and the template to correctly support filenames with spaces.
  • Windows: Win32 package has subsumed Win32-extras; update dependency.
Posted Fri Aug 18 15:20:03 2017

git-annex 6.20170520 released with these changes

  • move --to=here moves from all reachable remotes to the local repository.
  • initremote, enableremote: Support gpg subkeys suffixed with an exclamation mark, which forces gpg to use a specific subkey.
  • Improve progress display when watching file size, in cases where a transfer does not resume.
  • Fix transfer log file locking problem when running concurrent transfers.
  • Avoid concurrent git-config setting problem when running concurrent threads.
  • metadata: When setting metadata of a file that did not exist, no error message was displayed, unlike getting metadata and most other git-annex commands. Fixed this oversight.
  • Added annex.resolvemerge configuration, which can be set to false to disable the usual automatic merge conflict resolution done by git-annex sync and the assistant.
  • sync: Added --no-resolvemerge option.
  • Avoid error about git-annex-shell not being found when syncing with -J with a git remote where git-annex-shell is not installed.
  • Fix bug that prevented transfer locks from working when run on SMB or other filesystem that does not support fcntl locks and hard links.
  • assistant: Merge changes from refs/remotes/foo/master into master. Previously, only sync branches were merged. This makes regular git push into a repository watched by the assistant auto-merge.
  • Makefile: Install completions for the fish and zsh shells when git-annex is built with optparse-applicative-0.14.
  • assistant: Don't trust OSX FSEvents's eventFlagItemModified to be called when the last writer of a file closes it; apparently that sometimes does not happen, which prevented files from being quickly added.
Posted Mon Jun 12 17:55:37 2017

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