The git-annex package

[Tags:gpl, program]

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.


[Skip to Readme]

Properties

Versions 3.20110702, 3.20110702.2, 3.20110705, 3.20110707, 3.20110819, 3.20110902, 3.20110906, 3.20110915, 3.20110928, 3.20111011, 3.20111122, 3.20111203, 3.20111211, 3.20111231, 3.20120113, 3.20120115, 3.20120116, 3.20120123, 3.20120227, 3.20120229, 3.20120230, 3.20120309, 3.20120315, 3.20120405, 3.20120406, 3.20120418, 3.20120430, 3.20120511, 3.20120522, 3.20120605, 3.20120611, 3.20120614, 3.20120615, 3.20120624, 3.20120629, 3.20120721, 3.20120807, 3.20120825, 3.20120924, 3.20121001, 3.20121009, 3.20121010, 3.20121016, 3.20121017, 3.20121112, 3.20121126, 3.20121127, 3.20121127.1, 3.20121211, 3.20130102, 3.20130105, 3.20130107, 3.20130114, 3.20130124, 3.20130207, 3.20130216.1, 4.20130227, 4.20130314, 4.20130323, 4.20130405, 4.20130417, 4.20130501, 4.20130501.1, 4.20130516, 4.20130521, 4.20130521.1, 4.20130521.2, 4.20130601, 4.20130627, 4.20130709, 4.20130723, 4.20130802, 4.20130815, 4.20130827, 4.20130909, 4.20130920, 4.20130927, 4.20131002, 4.20131024, 4.20131101, 4.20131106, 5.20131118, 5.20131120, 5.20131127, 5.20131130, 5.20131213, 5.20131221, 5.20131230, 5.20140107, 5.20140108, 5.20140116, 5.20140127, 5.20140129, 5.20140210, 5.20140221, 5.20140227, 5.20140306, 5.20140320, 5.20140402, 5.20140405, 5.20140412, 5.20140421, 5.20140517, 5.20140529, 5.20140606, 5.20140613, 5.20140707, 5.20140709, 5.20140717, 5.20140817, 5.20140831, 5.20140915, 5.20140919, 5.20140926, 5.20140927, 5.20141013, 5.20141024, 5.20141125, 5.20141203, 5.20141219, 5.20141231, 5.20150113, 5.20150205, 5.20150219, 5.20150317, 5.20150327, 5.20150406, 5.20150406.1, 5.20150409, 5.20150420, 5.20150508, 5.20150508.1, 5.20150522, 5.20150528, 5.20150617, 5.20150710, 5.20150727, 5.20150731, 5.20150812, 5.20150824, 5.20150916, 5.20150930, 5.20151019, 5.20151102, 5.20151102.1, 5.20151116, 5.20151208, 5.20151218, 6.20160114, 6.20160126, 6.20160211, 6.20160229, 6.20160318, 6.20160412, 6.20160418, 6.20160419, 6.20160511, 6.20160527, 6.20160613, 6.20160619, 6.20160808, 6.20160907, 6.20160923, 6.20161012, 6.20161027, 6.20161031, 6.20161111, 6.20161118, 6.20161210, 6.20170101, 6.20170214, 6.20170301, 6.20170301.1, 6.20170321, 6.20170510, 6.20170519
Change log CHANGELOG
Dependencies aeson, async, aws (>=0.9.2), base (>=4.5 && <5.0), blaze-builder, bloomfilter, byteable, bytestring, case-insensitive, clientsession, concurrent-output (>=1.6), conduit, conduit-extra, containers (>=0.5.0.0), criterion, crypto-api, cryptonite, data-default, data-endian, DAV (>=1.0), dbus (>=0.10.7), deepseq, directory (>=1.2), disk-free-space, dlist, dns (>=1.0.0), edit-distance, esqueleto, exceptions (>=0.6), fdo-notify (>=0.3), feed (>=0.3.9), filepath, free, hfsevents, hinotify, hslogger, http-client, http-conduit (>=2.0), http-types (>=0.7), IfElse, magic, memory, monad-control, monad-logger, mountpoints, mtl (>=2), network (>=2.4), network-info, network-multicast, network-uri (>=2.6), old-locale, optparse-applicative (>=0.11.0), path-pieces (>=0.1.4), persistent, persistent-sqlite, persistent-template, process, QuickCheck (>=2.1), random, regex-tdfa, resourcet, SafeSemaphore, sandi, securemem, setenv, shakespeare (>=2.0.0), socks, split, stm (>=2.3), stm-chans, tasty (>=0.7), tasty-hunit, tasty-quickcheck, tasty-rerun, template-haskell, text, time, torrent (>=10000.0.0), transformers, unix, unix-compat, unordered-containers, utf8-string, uuid (>=1.2.6), wai, wai-extra, warp (>=3.0.0.5), warp-tls (>=1.4), Win32, Win32-extras, Win32-notify, yesod (>=1.2.6), yesod-core (>=1.2.19), yesod-default (>=1.2.0), yesod-form (>=1.3.15), yesod-static (>=1.2.4) [details]
License GPL-3
Copyright 2010-2017 Joey Hess
Author Joey Hess
Maintainer Joey Hess <id@joeyh.name>
Category Utility
Home page http://git-annex.branchable.com/
Source repository head: git clone git://git-annex.branchable.com/
Uploaded Fri May 19 14:58:43 UTC 2017 by JoeyHess
Distributions Arch:6.20170510, Debian:5.20151208, Fedora:5.20140717, FreeBSD:5.20150727, NixOS:6.20170519, Tumbleweed:6.20170321
Downloads 35312 total (789 in the last 30 days)
Votes
0 []
Status Docs not available [build log]
All reported builds failed as of 2017-05-19 [all 3 reports]

Flags

NameDescriptionDefaultType
s3Enable S3 supportEnabledAutomatic
webdavEnable WebDAV supportEnabledAutomatic
assistantEnable git-annex assistant and watch commandEnabledAutomatic
webappEnable git-annex webappEnabledAutomatic
pairingEnable pairingEnabledAutomatic
productionEnable production build (slower build; faster binary)EnabledAutomatic
androidCross building for AndroidDisabledAutomatic
androidspliceBuilding to get TH splices for AndroidDisabledAutomatic
testsuiteEmbed the test suite into git-annexEnabledAutomatic
torrentparserUse haskell torrent library to parse torrent filesEnabledAutomatic
magicmimeUse libmagic to determine file MIME typesEnabledAutomatic
concurrentoutputUse concurrent-output libraryEnabledAutomatic
benchmarkEnable benchmarkingDisabledAutomatic
network-uriGet Network.URI from the network-uri packageEnabledAutomatic
dbusEnable dbus supportEnabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Readme for git-annex

Readme for git-annex-6.20170519

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, checksumming time, or disk space.

For documentation, see doc/ or <https://git-annex.branchable.com/>