summaryrefslogtreecommitdiff
path: root/doc/transferring_data.mdwn
blob: d1ec5963f57357e1e492435caef56b7ed00186f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
git-annex can transfer data to or from any of a repository's git remotes.
Depending on where the remote is, the data transfer is done using rsync
(over ssh or locally), or plain cp (with copy-on-write
optimisations on supported filesystems), or using curl (for repositories
on the web). Some [[special_remotes]] are also supported that are not
traditional git remotes.

If a data transfer is interrupted, git-annex retains the partial transfer
to allow it to be automatically resumed later.

It's equally easy to transfer a single file to or from a repository,
or to launch a retrievel of a massive pile of files from whatever
repositories they are scattered amongst.

git-annex automatically uses whatever remotes are currently accessible,
preferring ones that are less expensive to talk to.

[[!img repomap.png caption="A real-world repository interconnection map
(generated by git-annex map)"]]