2015-03-24 19:23:59 +00:00
|
|
|
# NAME
|
|
|
|
|
|
|
|
git-annex repair - recover broken git repository
|
|
|
|
|
|
|
|
# SYNOPSIS
|
|
|
|
|
|
|
|
git annex repair
|
|
|
|
|
|
|
|
# DESCRIPTION
|
|
|
|
|
|
|
|
This can repair many of the problems with git repositories that `git fsck`
|
|
|
|
detects, but does not itself fix. It's useful if a repository has become
|
|
|
|
badly damaged. One way this can happen is if a repository used by git-annex
|
|
|
|
is on a removable drive that gets unplugged at the wrong time.
|
|
|
|
|
|
|
|
This command can actually be used inside git repositories that do not
|
|
|
|
use git-annex at all; when used in a repository using git-annex, it
|
|
|
|
does additional repairs of the git-annex branch.
|
|
|
|
|
|
|
|
It works by deleting any corrupt objects from the git repository, and
|
|
|
|
retrieving all missing objects it can from the remotes of the repository.
|
|
|
|
|
|
|
|
If that is not sufficient to fully recover the repository, it can also
|
|
|
|
reset branches back to commits before the corruption happened, delete
|
|
|
|
branches that are no longer available due to the lost data, and remove any
|
|
|
|
missing files from the index. It will only do this if run with the
|
|
|
|
`--force` option, since that rewrites history and throws out missing data.
|
|
|
|
Note that the `--force` option never touches tags, even if they are no
|
|
|
|
longer usable due to missing data.
|
|
|
|
|
|
|
|
After running this command, you will probably want to run `git fsck` to
|
|
|
|
verify it fixed the repository. Note that fsck may still complain about
|
|
|
|
objects referenced by the reflog, or the stash, if they were unable to be
|
|
|
|
recovered. This command does not try to clean up either the reflog or the
|
|
|
|
stash.
|
|
|
|
|
|
|
|
It is also a good idea to run `git annex fsck --fast` after this command,
|
|
|
|
to make sure that the git-annex branch reflects reality.
|
|
|
|
|
|
|
|
# OPTIONS
|
|
|
|
|
|
|
|
* `--force`
|
|
|
|
|
|
|
|
Enable repair actions that involve deleting data that has been
|
|
|
|
lost due to git repository corruption.
|
|
|
|
|
2021-05-10 19:00:13 +00:00
|
|
|
* Also the [[git-annex-common-options]](1) can be used.
|
|
|
|
|
2015-03-24 19:23:59 +00:00
|
|
|
# SEE ALSO
|
|
|
|
|
2015-05-29 16:12:55 +00:00
|
|
|
[[git-annex]](1)
|
|
|
|
|
|
|
|
[[git-annex-fsck]](1)
|
2015-03-24 19:23:59 +00:00
|
|
|
|
|
|
|
# AUTHOR
|
|
|
|
|
|
|
|
Joey Hess <id@joeyh.name>
|
|
|
|
|
|
|
|
Warning: Automatically converted into a man page by mdwn2man. Edit with care.
|