git-annex/templates/documentation/repogroup.hamlet
Joey Hess 341269e035 git-annex (4.20130815) unstable; urgency=low
* assistant, watcher: .gitignore files and other git ignores are now
    honored, when git 1.8.4 or newer is installed.
    (Thanks, Adam Spiers, for getting the necessary support into git for this.)
  * importfeed: Ignores transient problems with feeds. Only exits nonzero
    when a feed has repeatedly had a problems for at least 1 day.
  * importfeed: Fix handling of dots in extensions.
  * Windows: Added support for encrypted special remotes.
  * Windows: Fixed permissions problem that prevented removing files
    from directory special remote. Directory special remotes now fully usable.

# imported from the archive
2013-08-15 04:14:33 -04:00

58 lines
2.9 KiB
Text

<div .span9 .hero-unit>
<h2>
Repository groups
<p>
Each repository you configure git-annex to use is a member of a #
repository group. Each group of repositories has a different #
purpose.
<p>
Let's start with the <b>client repositories</b>. These are the #
repositories that contain files that you can directly use. Generally #
you'll have one client repository per computer. The whole point of #
the git-annex assistant is to keep these repositories in sync as you #
change files, add files, delete files, etc.
<p>
The next most important repository group is the #
<b>transfer repositories</b>. #
These are used to transfer files between clients, when the clients #
cannot directly talk to one-another. Transfer repositories only #
hold the files that need to be synced to other repositories, so they #
are relatively small.
<p>
You can get along without any <b>full backup repositories</b>, but #
they're a useful safeguard. These repositories accumulate every file
they can get ahold of. A large removable drive makes a good full backup #
repository.
<p>
Similarly, the <b>incremental backup repositories</b> try to back up #
every file, but these only accumulate files that are not already #
present in a full or incremental backup.
<p>
Next we come to the <b>archive repositories</b>.
The archive repositories coordinate together, so that each file is #
archived in only one place. When you move files into a folder named #
"archive", they'll be moved to an archive repository, and removed from #
all your client repositories. This is handy if you have old files #
you don't need anymore, but want to keep archived for later. #
When you copy or move a file out of an "archive" folder, it'll be #
retrieved from the archive repository.
<p>
The <b>small archive repositories</b> are like other archive #
repositories, but smaller. While archive repositories normally accumulate #
every file they can, small archive repositories only accumulate files #
once you put them in an "archive" directory.
<p>
Sometimes useful for devices like cameras are the #
<b>source repositories</b>. Repositories in this group only retain #
files until they can be moved to some other repository, like a client #
or transfer repository.
<p>
If you configure a repository that can be viewed by the public, #
but you don't want all your files to show up there, you can #
configure it to be a <b>public repository</b>. Then only files #
located in a directory you choose will be sent to it.
<p>
Finally, repositories can be configured to be in <b>manual mode</b>. This #
prevents content being automatically synced to the repository, but #
you can use command-line tools like `git annex get` and `git annex drop` #
to control what content is present.