manage files with git, without checking their contents into git

Version on this page:6.20180227
LTS Haskell 10.10:6.20171214
Stackage Nightly 2018-03-10:6.20180227
Latest on Hackage:8.20210714

See all snapshots git-annex appears in

GPL-3.0-only licensed by Joey Hess
Maintained by Joey Hess
This version can be pinned in stack with:git-annex-6.20180227@sha256:7227e88240f175f9f8a28538eeba9e72fd3759d1d2008530d72601de7ff16348,27612

Module documentation for 6.20180227

There are no documented modules for this package.

git-annex allows managing files with git, without checking the file contents into git. While that may seem paradoxical, it is useful when dealing with files larger than git can currently easily handle, whether due to limitations in memory, time, or disk space.

It can store large files in many places, from local hard drives, to a large number of cloud storage services, including S3, WebDAV, and rsync, with a dozen cloud storage providers usable via plugins. Files can be stored encrypted with gpg, so that the cloud storage provider cannot see your data. git-annex keeps track of where each file is stored, so it knows how many copies are available, and has many facilities to ensure your data is preserved.

git-annex can also be used to keep a folder in sync between computers, noticing when files are changed, and automatically committing them to git and transferring them to other computers. The git-annex webapp makes it easy to set up and use git-annex this way.