2013-10-20 21:50:51 +00:00
|
|
|
# NAME
|
|
|
|
|
|
|
|
git-recover-repository - Fix a broken git repository
|
|
|
|
|
|
|
|
# SYNOPSIS
|
|
|
|
|
|
|
|
git-recover-repository [--force]
|
|
|
|
|
|
|
|
# DESCRIPTION
|
|
|
|
|
|
|
|
This can fix a corrupt or broken git repository, which git fsck would
|
|
|
|
only complain has problems.
|
|
|
|
|
|
|
|
It does by deleting all corrupt objects, and retreiving all missing
|
|
|
|
objects that it can from the remotes of the repository.
|
|
|
|
|
|
|
|
If that is not sufficient to fully recover the repository, it can also
|
2013-10-22 16:58:04 +00:00
|
|
|
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.
|
2013-10-21 19:28:06 +00:00
|
|
|
|
|
|
|
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
|
2013-10-21 20:45:31 +00:00
|
|
|
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.
|
2013-10-21 19:28:06 +00:00
|
|
|
|
|
|
|
Since this command unpacks all packs in the repository, you may want to
|
|
|
|
run `git gc` afterwards.
|
2013-10-20 21:50:51 +00:00
|
|
|
|
|
|
|
# AUTHOR
|
|
|
|
|
|
|
|
Joey Hess <joey@kitenet.net>
|
|
|
|
|
|
|
|
<http://git-annex.branchable.com/>
|
|
|
|
|
|
|
|
Warning: Automatically converted into a man page by mdwn2man. Edit with care
|