This is the command git-annex-repair that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
git-annex-repair - recover broken git repository
git annex repair
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-
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
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.
Enable repair actions that involve deleting data that has been lost due to git
Use git-annex-repair online using onworks.net services