fsck improvements
* fsck: Check if annex.numcopies is satisfied. * fsck: Verify the sha1 of files when the SHA1 backend is used. * fsck: Verify the size of files when the WORM backend is used. * fsck: Allow specifying individual files to fsk if fscking everything is not desired. * fsck: Fix bug, introduced in 0.04, in detection of unused data.
This commit is contained in:
parent
d4d65a3c92
commit
5fa25a812a
15 changed files with 236 additions and 31 deletions
|
@ -159,10 +159,12 @@ Many git-annex subcommands will stage changes for later `git commit` by you.
|
|||
|
||||
git annex setkey --key=1287765018:3 /tmp/file
|
||||
|
||||
* fsck
|
||||
* fsck [path ...]
|
||||
|
||||
This subcommand checks the whole annex for consistency, and warns
|
||||
about any problems found.
|
||||
With no parameters, this subcommand checks the whole annex for consistency,
|
||||
and warns about any problems found.
|
||||
|
||||
With parameters, only the specified files are checked.
|
||||
|
||||
# OPTIONS
|
||||
|
||||
|
|
|
@ -276,3 +276,37 @@ significantly for really big files. To make SHA1 the detault, just
|
|||
add something like this to `.gitattributes`:
|
||||
|
||||
* git-annex-backend=SHA1
|
||||
|
||||
## fsck: verifying your data
|
||||
|
||||
You can use the fsck subcommand to check for problems in your data.
|
||||
What can be checked depends on the [[backend|backends]] you've used to store
|
||||
the data. For example, when you use the SHA1 backend, fsck will verify that
|
||||
the checksums of your files are good. Fsck also checks that the annex.numcopies
|
||||
setting is satisfied for all files, and it warns about any dangling values
|
||||
in `.git/annex/objects/`.
|
||||
|
||||
# git annex fsck
|
||||
fsck (checking for unused data...) (checking files...) ok
|
||||
|
||||
Fsck checks the entire repository for problems by default. But you can
|
||||
also specify the files to check.
|
||||
This is particularly useful if you're using sha1 and don't want to spend
|
||||
a long time checksumming everything.
|
||||
|
||||
# git annex fsck my_cool_big_file
|
||||
fsck my_cool_big_file (checksum..) ok
|
||||
|
||||
## fsck: When things go wrong
|
||||
|
||||
Fsck never deletes possibly bad data; instead it will be moved to
|
||||
`.git/annex/bad/` for you to review. Here is a sample of what fsck
|
||||
might say about a badly messed up annex:
|
||||
|
||||
# git annex fsck
|
||||
fsck (checking for unused data...)
|
||||
Some annexed data is no longer pointed to by any files in the repository.
|
||||
If this data is no longer needed, it can be removed using git-annex dropkey:
|
||||
WORM:1289672605:3:file
|
||||
(checking files...)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue