summaryrefslogtreecommitdiff
path: root/doc/walkthrough/using_bup.mdwn
blob: 12aa610372086c71bd0b7fe0ef3aef8f0a4a9de8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Another [[special_remote|special_remotes]] that git-annex can use is
a [[special_remotes/bup]] repository. Bup stores large file contents
in a git repository of its own, with deduplication. Combined with
git-annex, you can have git on both the frontend and the backend.

Here's how to create a bup remote, and describe it.

	# git annex initremote mybup type=bup encryption=none remote=example.com/big/mybup
	initremote bup (bup init)
	Initialized empty Git repository in /big/mybup/
	ok
	# git annex describe mybup "my bup repository at example.com"
	describe mybup ok

Now the remote can be used like any other remote.

	# git annex move my_cool_big_file --to mybup
	move my_cool_big_file (to mybup...)
	Receiving index from server: 1100/1100, done.
	ok

Note that, unlike other remotes, bup does not really support removing
content from its git repositories. This is a feature. :)

	# git annex move my_cool_big_file --from mybup
	move my_cool_big_file 
	  content cannot be removed from bup remote
	failed
	git-annex: 1 failed

See [[special_remotes/bup]] for details.