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.
git-annex is designed for git users who love the command line. For everyone else, the git-annex assistant turns git-annex into an easy to use folder synchroniser.
To get a feel for git-annex, see the walkthrough.
use case: The Archivist
Bob has many drives to archive his data, most of them kept offline, in a safe place.
With git-annex, Bob has a single directory tree that includes all his files, even if their content is being stored offline. He can reorganize his files using that tree, committing new versions to git, without worry about accidentally deleting anything.
When Bob needs access to some files, git-annex can tell him which drive(s)
they're on, and easily make them available. Indeed, every drive knows what
is on every other drive.
Bob thinks long-term, and so he appreciates that git-annex uses a simple
repository format. He knows his files will be accessible in the future
even if the world has forgotten about git-annex and git.
Run in a cron job, git-annex adds new files to archival drives at night. It
also helps Bob keep track of intentional and unintentional copies of
files, and logs information he can use to decide when it's time to duplicate
the content of old drives.
use case: The Nomad
Alice is always on the move, often with her trusty netbook and a small handheld terabyte USB drive, or a smaller USB keydrive. She has a server out there on the net. She stores data, encrypted in the Cloud.
All these things can have different files on them, but Alice no longer
has to deal with the tedious process of keeping them manually in sync,
or remembering where she put a file. git-annex manages all these data
sources as if they were git remotes.
When she has 1 bar on her cell, Alice queues up interesting files on her
server for later. At a coffee shop, she has git-annex download them to her
USB drive. High in the sky or in a remote cabin, she catches up on
podcasts, videos, and games, first letting git-annex copy them from
her USB drive to the netbook (this saves battery power).
When she's done, she tells git-annex which to keep and which to remove.
They're all removed from her netbook to save space, and Alice knows
that next time she syncs up to the net, her changes will be synced back
to her server.
If that describes you, or if you're some from column A and some from column B, then git-annex may be the tool you've been looking for to expand from keeping all your small important files in git, to managing your large files with git.
Posted Tue Mar 21 17:47:29 2017
Posted Wed Mar 1 16:51:30 2017
day 453 release prep
Posted Mon Mar 20 21:17:38 2017
day 452 GIT SSH
Posted Sat Mar 18 00:02:35 2017
day 451 annex.securehashesonly
Posted Mon Feb 27 20:12:00 2017
day 450 hardening against SHA attacks
Posted Sat Feb 25 00:06:43 2017
day 449 SHA1 break day
Posted Thu Feb 23 20:44:24 2017
git-annex assistant lan
Posted Wed Jun 4 16:49:34 2014
git-annex views demo
Posted Thu Feb 20 17:23:07 2014
Recent forum posts
special remote which applies a lossless operation in/out
Posted Sat Mar 18 13:46:56 2017
long paths on windows 10 - workaround
Posted Thu Mar 16 01:00:51 2017
git annex uninit creates broken symlinks
Posted Tue Mar 14 02:09:57 2017
Trouble setting up public repo cloneable from a web site
Posted Sun Mar 12 17:59:10 2017
make "git annex fsck" only display, not move
Posted Wed Mar 8 13:30:54 2017