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.
git-annex 10.20250416 released with these changes
- Added the mask special remote.
- updatecluster, updateproxy: When a remote that has no annex-uuid is configured as annex-cluster-node, warn and avoid writing bad data to the git-annex branch.
- Fix build without the assistant.
- fsck: Avoid complaining about required content of dead repositories.
- drop: Avoid redundant object directory thawing.
- httpalso: Windows url fix.
- Added remote.name.annex-web-options config, which is a per-remote version of the annex.web-options config.
- migrate: Fix --remove-size to work when a file is not present. Fixes reversion introduced in version 10.20231129.
- Support git remotes that use a IPV6 link-local address with a zone ID.
- Support git remotes that use an url with a user name that is URL encoded, or in the case of an "scp-style" url, a user name that must be encoded to be legal in an URL.
- Fix git-lfs special remote ssh endpoint discovery when the repository path is URL encoded.
git-annex 10.20250320 released with these changes
- Added the compute special remote.
- addcomputed: New command, adds a file that is generated by a compute special remote.
- recompute: New command, recomputes computed files.
- findcomputed: New command, displays information about computed files.
- Support help.autocorrect settings "prompt", "never", and "immediate".
- Allow setting remote.foo.annex-tracking-branch to a branch name that contains "/", as long as it's not a remote tracking branch.
- Added OsPath build flag, which speeds up git-annex's operations on files.
- git-lfs: Added an optional apiurl parameter. (This needs version 1.2.5 of the haskell git-lfs library to be used.)
- fsck: Remember the files that are checked, so a later run with --more will skip them, without needing to use --incremental.
We are happy to announce that the call for participation for Distribits 2025 is now online at https://distribits.live/
This meeting is organized by the folks behind git-annex and DataLad. We aim to bring together enthusiasts of tools and workflows in the domain of distributed data.
We are looking forward to October 2025 and to meeting people from everywhere, online and in Düsseldorf.
Registration is open now and until May 1st. Please consider submitting a talk if you are doing something interesting or unusual with git-annex.
git-annex 10.20250115 released with these changes
- Improve handing of ssh connection problems during remote annex.uuid discovery.
- log: Support --key, as well as --branch and --unused.
- Avoid verification error when addurl --verifiable is used with an url claimed by a special remote other than the web.
- Fix installation on Android.
- Allow enableremote of an existing webdav special remote that has read-only access.
- git-remote-annex: Use enableremote rather than initremote.
- Windows: Fix permission denied error when dropping files that have the readonly attribute set.
- Added freezecontent-annex and thawcontent-annex hooks that correspond to the git configs annex.freezecontent and annex.thawcontent.
- Added secure-erase-annex hook that corresponds to the git config annex.secure-erase-command.
- Added commitmessage-annex hook that corresponds to the git config annex.commitmessage-command.
- Added http-headers-annex hook that corresponds to the git config annex.http-headers-command.
- Added git configs annex.post-update-command and annex.pre-commit-command that correspond to the post-update-annex and pre-commit-annex hooks.
- Added annex.pre-init-command git config and pre-init-annex hook that is run before git-annex repository initialization.
- Linux standalone builds' bundled rsync updated to fix security holes.
git-annex 10.20250102 released with these changes
- Added config
url.<base>.annexInsteadOf
corresponding to git'surl.<base>.pushInsteadOf
, to configure the urls to use for accessing the git-annex repositories on a server without needing to configure remote.name.annexUrl in each repository. - Work around git hash-object --stdin-paths's odd stripping of carriage return from the end of the line (some windows infection), avoiding crashing when the repo contains a filename ending in a carriage return.
- Document that settting preferred content to "" is the same as the default unset behavior.
- sync: Avoid misleading warning about future preferred content transition when preferred content is set to "".
- Honor annex.addunlocked configuration when importing a tree from a special remote.
- Removed the i386ancient standalone tarball build for linux, which was increasingly unable to support new git-annex features.
- Removed support for building with ghc older than 9.0.2, and with older versions of haskell libraries than are in current Debian stable.
- stack.yaml: Update to lts-23.2.
git-annex 10.20241202 released with these changes
- add: Consistently treat files in a dotdir as dotfiles, even when ran inside that dotdir.
- add: When adding a dotfile as a non-large file, mention that it's a dotfile.
- p2phttp: Added --directory option which serves multiple git-annex repositories located inside a directory.
- When remote.name.annexUrl is an annex+http(s) url, that uses the same hostname as remote.name.url, which is itself a http(s) url, they are assumed to share a username and password. This avoids unnecessary duplicate password prompts.
- git-remote-annex: Fix a reversion introduced in version 10.20241031 that broke cloning from a special remote.
- git-remote-annex: Fix cloning from a special remote on a crippled filesystem.
- git-remote-annex: Fix buggy behavior when annex.stalldetection is configured.
- git-remote-annex: Require git version 2.31 or newer, since old ones had a buggy git bundle command.
- S3: Support versioning=yes with a readonly bucket. (Needs aws-0.24.3)
- S3: Send git-annex or other configured User-Agent. (Needs aws-0.24.3)
- S3: Fix infinite loop and memory blowup when importing from an unversioned S3 bucket that is large enough to need pagination.
- S3: Use significantly less memory when importing from a versioned S3 bucket.
- vpop: Only update state after successful checkout.
Since 24.03.2024, hellotux.com now offers git-annex-branded shirts, hoodies and backpacks. Just in time, right before the distribits meeting.
This cooperation was initiated by Yann Büchau (nobodyinperson).
We are happy to announce that the call for participation for the first ever Distribits meeting is now online at https://distribits.live/
This meeting is organized by the folks behind git-annex and DataLad. We aim to bring together enthusiasts of tools and workflows in the domain of distributed data.
We are looking forward to April 2024 and to meeting people from everywhere, online and in Düsseldorf.
Registration is open now and until October 15. Please consider submitting a talk if you are doing something interesting or unusual with git-annex.
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.
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 annex.security.allow-unverified-downloads 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 annex.security.allowed-url-schemes.
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 annex.security.allowed-ip-addresses.
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 annex.security.allowed-http-addresses for details and how to enable them.
The annex.web-download-command configuration has been removed, use annex.web-options instead.
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!
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!
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 id@joeyh.name. --Joey
git-annex will be briefly presented at FOSDEM, on Sunday February 4th at 15:40. Details.
Thanks to Richard Hartmann for making this presentation.
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
Linux Weekly News has a nice article on git-annex in it this week.