summaryrefslogtreecommitdiff
path: root/doc/walkthrough/unused_data.mdwn
blob: 518550ac02db0bbe71f497ee11678cf2482fcfa3 (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
It's possible for data to accumulate in the annex that no files in any
branch point to anymore. One way it can happen is if you `git rm` a file
without first calling `git annex drop`. And, when you modify an annexed
file, the old content of the file remains in the annex. Another way is when
migrating between key-value [[backends]].

This might be historical data you want to preserve, so git-annex defaults to
preserving it. So from time to time, you may want to check for such data and
eliminate it to save space.

	# git annex unused
	unused . (checking for unused data...) 
	  Some annexed data is no longer used by any files in the repository.
	    NUMBER  KEY
	    1       SHA256-s86050597--6ae2688bc533437766a48aa19f2c06be14d1bab9c70b468af445d4f07b65f41e
	    2       SHA1-s14--f1358ec1873d57350e3dc62054dc232bc93c2bd1
	  (To see where data was previously used, try: git log --stat -S'KEY')
	  (To remove unwanted data: git-annex dropunused NUMBER)
	ok

After running `git annex unused`, you can follow the instructions to examine
the history of files that used the data, and if you decide you don't need that
data anymore, you can easily remove it:

	# git annex dropunused 1
	dropunused 1 ok

Hint: To drop a lot of unused data, use a command like this:

	# git annex dropunused `seq 1 1000`