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

Versions3.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
Change logCHANGELOG
Dependenciesaeson, ascii-progress (<=0.2.1.2), async, aws (>=0.9.2), base (>=4.5 && <4.9), blaze-builder, bloomfilter, byteable, bytestring, case-insensitive, clientsession, conduit, conduit-extra, containers (>=0.5.0.0), crypto-api, cryptohash (>=0.11.0), cryptonite, data-default, data-endian, DAV (>=1.0), dbus (>=0.10.3), directory, dlist, dns, edit-distance, ekg, esqueleto, exceptions (>=0.6), fdo-notify (>=0.3), feed (>=0.3.4), filepath, gnutls (>=0.1.4), hfsevents, hinotify, hslogger, http-client, http-conduit, http-types, IfElse, json, MissingH, monad-control, monad-logger, mtl (>=2), network (>=2.0), network-info, network-multicast, network-protocol-xmpp, 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-compat, regex-tdfa, resourcet, SafeSemaphore, sandi, securemem, setenv, shakespeare (>=2.0.0), stm (>=2.3), tasty (>=0.7), tasty-hunit, tasty-quickcheck, tasty-rerun, template-haskell, terminal-size, text, time, torrent (>=10000.0.0), transformers, unix, unix-compat, utf8-string, uuid, wai, wai-extra, warp (>=3.0.0.5), warp-tls, Win32, Win32-extras, Win32-notify, xml-types, 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]
LicenseGPL-3
Copyright2010-2014 Joey Hess
AuthorJoey Hess
MaintainerJoey Hess <id@joeyh.name>
StabilityStable
CategoryUtility
Home pagehttp://git-annex.branchable.com/
Source repositoryhead: git clone git://git-annex.branchable.com/
Executablesgit-annex
UploadedMon Aug 24 21:22:46 UTC 2015 by JoeyHess
DistributionsDebian:5.20150812, Fedora:5.20140717, FreeBSD:5.20150727, LTSHaskell:5.20150727, NixOS:5.20150824, Stackage:5.20150727
Downloads21862 total (1291 in last 30 days)
Votes
0 []
StatusDocs not available [build log]
All reported builds failed as of 2015-08-24 [all 1 reports]

Flags

NameDescriptionDefaultType
s3Enable S3 supportEnabledAutomatic
webdavEnable WebDAV supportEnabledAutomatic
inotifyEnable inotify supportEnabledAutomatic
dbusEnable dbus supportEnabledAutomatic
assistantEnable git-annex assistant and watch commandEnabledAutomatic
webappEnable git-annex webappEnabledAutomatic
webapp-secureSecure webappEnabledAutomatic
pairingEnable pairingEnabledAutomatic
xmppEnable notifications using XMPPEnabledAutomatic
dnsEnable the haskell DNS library for DNS lookupEnabledAutomatic
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
tdfaUse regex-tdfa for wildcardsEnabledAutomatic
feedEnable podcast feed supportEnabledAutomatic
quviEnable use of quvi to download videosEnabledAutomatic
tahoeEnable the tahoe special remoteEnabledAutomatic
desktopnotifyEnable desktop environment notificationsEnabledAutomatic
torrentparserUse haskell torrent library to parse torrent filesEnabledAutomatic
asciiprogressUse ascii-progress library (experimental)DisabledAutomatic
ekgEnable use of EKG to monitor git-annex as it runs (at http://localhost:4242/)DisabledAutomatic
network-uriGet Network.URI from the network-uri packageEnabledAutomatic
databaseEnable building with persistent for database use (disable to build on platforms not supporting TH)EnabledAutomatic
cryptoniteUse the cryptonite library, instead of the older cryptohashEnabledAutomatic

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

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for git-annex-5.20150824

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