path: root/Documentation/git-fsck-objects.txt
diff options
authorJunio C Hamano <>2007-01-29 00:33:58 (GMT)
committerJunio C Hamano <>2007-01-29 00:33:58 (GMT)
commitdf391b192d285646fe80ca4d3cfe3c0a3beb5989 (patch)
tree6d04a83b4bd6c6f42a4108a59d7a40d9022f65f3 /Documentation/git-fsck-objects.txt
parente0d10e1c63bc52b37bbec99b07deee794058d9b4 (diff)
git-fsck-objects is now synonym to git-fsck
Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'Documentation/git-fsck-objects.txt')
1 files changed, 3 insertions, 125 deletions
diff --git a/Documentation/git-fsck-objects.txt b/Documentation/git-fsck-objects.txt
index d0af99d..f21061e 100644
--- a/Documentation/git-fsck-objects.txt
+++ b/Documentation/git-fsck-objects.txt
@@ -8,132 +8,10 @@ git-fsck-objects - Verifies the connectivity and validity of the objects in the
-'git-fsck-objects' [--tags] [--root] [--unreachable] [--cache]
- [--full] [--strict] [<object>*]
+'git-fsck-objects' ...
-Verifies the connectivity and validity of the objects in the database.
- An object to treat as the head of an unreachability trace.
-If no objects are given, git-fsck-objects defaults to using the
-index file and all SHA1 references in .git/refs/* as heads.
- Print out objects that exist but that aren't readable from any
- of the reference nodes.
- Report root nodes.
- Report tags.
- Consider any object recorded in the index also as a head node for
- an unreachability trace.
- Check not just objects in GIT_OBJECT_DIRECTORY
- ($GIT_DIR/objects), but also the ones found in alternate
- or $GIT_DIR/objects/info/alternates,
- and in packed git archives found in $GIT_DIR/objects/pack
- and corresponding pack subdirectories in alternate
- object pools.
- Enable more strict checking, namely to catch a file mode
- recorded with g+w bit set, which was created by older
- versions of git. Existing repositories, including the
- Linux kernel, git itself, and sparse repository have old
- objects that triggers this check, but it is recommended
- to check new projects with this flag.
-It tests SHA1 and general object sanity, and it does full tracking of
-the resulting reachability and everything else. It prints out any
-corruption it finds (missing or bad objects), and if you use the
-'--unreachable' flag it will also print out objects that exist but
-that aren't readable from any of the specified head nodes.
-So for example
- git-fsck-objects --unreachable HEAD $(cat .git/refs/heads/*)
-will do quite a _lot_ of verification on the tree. There are a few
-extra validity tests to be added (make sure that tree objects are
-sorted properly etc), but on the whole if "git-fsck-objects" is happy, you
-do have a valid tree.
-Any corrupt objects you will have to find in backups or other archives
-(i.e., you can just remove them and do an "rsync" with some other site in
-the hopes that somebody else has the object you have corrupted).
-Of course, "valid tree" doesn't mean that it wasn't generated by some
-evil person, and the end result might be crap. git is a revision
-tracking system, not a quality assurance system ;)
-Extracted Diagnostics
-expect dangling commits - potential heads - due to lack of head information::
- You haven't specified any nodes as heads so it won't be
- possible to differentiate between un-parented commits and
- root nodes.
-missing sha1 directory '<dir>'::
- The directory holding the sha1 objects is missing.
-unreachable <type> <object>::
- The <type> object <object>, isn't actually referred to directly
- or indirectly in any of the trees or commits seen. This can
- mean that there's another root node that you're not specifying
- or that the tree is corrupt. If you haven't missed a root node
- then you might as well delete unreachable nodes since they
- can't be used.
-missing <type> <object>::
- The <type> object <object>, is referred to but isn't present in
- the database.
-dangling <type> <object>::
- The <type> object <object>, is present in the database but never
- 'directly' used. A dangling commit could be a root node.
-warning: git-fsck-objects: tree <tree> has full pathnames in it::
- And it shouldn't...
-sha1 mismatch <object>::
- The database has an object who's sha1 doesn't match the
- database value.
- This indicates a serious data integrity problem.
-Environment Variables
- used to specify the object database root (usually $GIT_DIR/objects)
- used to specify the index file of the index
- used to specify additional object database roots (usually unset)
-Written by Linus Torvalds <>
-Documentation by David Greaves, Junio C Hamano and the git-list <>.
-Part of the gitlink:git[7] suite
+This is a synonym for gitlink:git-fsck[1]. Please refer to the
+documentation of that command.