git-annex
git-annex is a distributed file synchronization system written in Haskell. It aims to solve the problem of sharing and synchronizing collections of large files independent from a commercial service or even a central server.
Original author(s) | Joey Hess |
---|---|
Initial release | 19 October 2010 |
Stable release | 7.20190615
/ 15 June 2019 |
Repository | |
Written in | Haskell |
Operating system | Linux, FreeBSD, Android, OS X, Windows |
Size | 44.2 MB |
Type | File synchronization |
License | GPL3+, AGPL3+ [1] |
Website | git-annex |
History
The development of git-annex began in 2010.[2] In 2012-13 the development was funded through a Kickstarter campaign.[3] The main development of this campaign was the git-annex assistant, a component that runs in the background to automate the synchronization of repositories.
The next crowd funding campaign for 2013-14 was organized over a self hosted platform.[4]
Design
git-annex uses git to index files but does not store them in the git history. Instead a symbolic link representing and linking to the probably large file is committed. git-annex manages a content-addressable storage for the files under its control. A separate git branch logs the location of every file. Thus users can clone a git-annex repository and then decide for every file whether to make it locally available.
Availability
git-annex is notably part of the following distributions:[5]
See also
References
- "license". git-annex.branchable.com. 18 January 2014. Retrieved 1 May 2015.
- "git-annex roadmap".
- "git-annex kickstarter campaign 2012".
- "git-annex campaign".
- "install options".
- "Debian".
- "Ubuntu".
- "Fedora".
- "FreeBSD".
- "ArchLinux". git-annex.branchable.com. Retrieved 2015-12-06.
- "NixOS". git-annex.branchable.com. Retrieved 2019-09-11.
- "Guix". git-annex.branchable.com. Retrieved 2019-09-11.
- "GentooLinux". git-annex.branchable.com. Retrieved 2019-09-11.