<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/fsck-cache.c, branch v0.99</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v0.99</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v0.99'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2005-07-10T23:16:34Z</updated>
<entry>
<title>[PATCH] alternate object store and fsck</title>
<updated>2005-07-10T23:16:34Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-07-10T22:40:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a3eb250f996bf5e12376ec88622c4ccaabf20ea8'/>
<id>urn:sha1:a3eb250f996bf5e12376ec88622c4ccaabf20ea8</id>
<content type='text'>
The location alt_odb[j].name[0..] is filled with ??/?{38} to form a sha1
filename to try, but I was too lazy to allocate a copy, so while
fsck_object_dir() is running for the directory, the filenames ??/?{38}
are filled after NUL (usually and always the location should have '/'),
making them "not found".

This should fix it.

Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>git-fsck-cache: don't complain about lacking references when they are all in packs.</title>
<updated>2005-07-08T00:05:41Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@g5.osdl.org</email>
</author>
<published>2005-07-08T00:05:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=659cacf5a9a2c7e0eed982e4684f84b47a3e2951'/>
<id>urn:sha1:659cacf5a9a2c7e0eed982e4684f84b47a3e2951</id>
<content type='text'>
We used to not count them at all, which then made us complain that there
were no refs.
</content>
</entry>
<entry>
<title>Make git-fsck-cache check HEAD integrity</title>
<updated>2005-07-03T17:40:38Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@g5.osdl.org</email>
</author>
<published>2005-07-03T17:40:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c33303839c76c41c9f85e5bd3f7b04fab60c38ca'/>
<id>urn:sha1:c33303839c76c41c9f85e5bd3f7b04fab60c38ca</id>
<content type='text'>
In particular, check that it's a symlink, and points to refs/heads/.  We
depend on that these days not only for "git checkout", but also because
fsck and others only check for references in the .git/refs/
subdirectory, not things like HEAD itself.
</content>
</entry>
<entry>
<title>Fix up "for_each_ref()" to be more usable, and use it in git-fsck-cache</title>
<updated>2005-07-03T17:01:38Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@g5.osdl.org</email>
</author>
<published>2005-07-03T17:01:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=944d858969e4e14adefdd8f21fac5c8ab45f83f7'/>
<id>urn:sha1:944d858969e4e14adefdd8f21fac5c8ab45f83f7</id>
<content type='text'>
It needed to take the GIT_DIR information into account, something that
the original receive-pack usage just never cared about.
</content>
</entry>
<entry>
<title>[PATCH] verify-pack updates.</title>
<updated>2005-07-01T05:33:47Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-07-01T00:15:39Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f3bf92240956241e6b21e80a1c281ec7716b9f23'/>
<id>urn:sha1:f3bf92240956241e6b21e80a1c281ec7716b9f23</id>
<content type='text'>
Nico pointed out that having verify_pack.c and verify-pack.c was
confusing.  Rename verify_pack.c to pack-check.c as suggested,
and enhances the verification done quite a bit.

 - Built-in sha1_file unpacking knows that a base object of a
   deltified object _must_ be in the same pack, and takes
   advantage of that fact.

 - Earlier verify-pack command only checked the SHA1 sum for the
   entire pack file and did not look into its contents.  It now
   checks everything idx file claims to have unpacks correctly.

 - It now has a hook to give more detailed information for
   objects contained in the pack under -v flag.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] Add git-verify-pack command.</title>
<updated>2005-06-29T16:11:39Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-06-29T09:51:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f9253394a271a9fefdd234a86c228adeb6d0136a'/>
<id>urn:sha1:f9253394a271a9fefdd234a86c228adeb6d0136a</id>
<content type='text'>
Given a list of &lt;pack&gt;.idx files, this command validates the
index file and the corresponding .pack file for consistency.

This patch also uses the same validation mechanism in fsck-cache
when the --full flag is used.

During normal operation, sha1_file.c verifies that a given .idx
file matches the .pack file by comparing the SHA1 checksum
stored in .idx file and .pack file as a minimum sanity check.
We may further want to check the pack signature and version when
we map the pack, but that would be a separate patch.

Earlier, errors to map a pack file was not flagged fatal but led
to a random fatal error later.  This version explicitly die()s
when such an error is detected.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] Update fsck-cache (take 2)</title>
<updated>2005-06-28T22:17:12Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-06-28T21:58:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=8a498a05c3c6b2f53db669b24f36257ab213eb4c'/>
<id>urn:sha1:8a498a05c3c6b2f53db669b24f36257ab213eb4c</id>
<content type='text'>
The fsck-cache complains if objects referred to by files in .git/refs/
or objects stored in files under .git/objects/??/ are not found as
stand-alone SHA1 files (i.e.  found in alternate object pools
GIT_ALTERNATE_OBJECT_DIRECTORIES or packed archives stored under
.git/objects/pack).

Although this is a good semantics to maintain consistency of a single
.git/objects directory as a self contained set of objects, it sometimes
is useful to consider it is OK as long as these "outside" objects are
available.

This commit introduces a new flag, --standalone, to git-fsck-cache.
When it is not specified, connectivity checks and .git/refs pointer
checks are taught that it is OK when expected objects do not exist under
.git/objects/?? hierarchy but are available from an packed archive or in
an alternate object pool.

Another new flag, --full, makes git-fsck-cache to check not only the
current GIT_OBJECT_DIRECTORY but also objects found in alternate object
pools and packed GIT archives.a

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] Remove "delta" object representation.</title>
<updated>2005-06-27T22:27:51Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-06-27T10:33:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c4584ae3fd7cd595a638a07dfd853e9d2745e930'/>
<id>urn:sha1:c4584ae3fd7cd595a638a07dfd853e9d2745e930</id>
<content type='text'>
Packed delta files created by git-pack-objects seems to be the
way to go, and existing "delta" object handling code has exposed
the object representation details to too many places.  Remove it
while we refactor code to come up with a proper interface in
sha1_file.c.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>Don't ignore reachability of tag objects in fsck</title>
<updated>2005-06-23T02:06:34Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@ppc970.osdl.org</email>
</author>
<published>2005-06-23T02:06:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e4bcaac17e8959eb970a348519a25d0d396395f0'/>
<id>urn:sha1:e4bcaac17e8959eb970a348519a25d0d396395f0</id>
<content type='text'>
We used to ignore unreachable tags, which just causes problems: it makes
"git prune" leave them around, but since we'll have prune everything
that tag points to, the tag object really should be removed too.

So remove the code that made us think tags were always reachable.
</content>
</entry>
<entry>
<title>git-fsck-cache: complain if no default references found</title>
<updated>2005-06-05T16:55:27Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@ppc970.osdl.org</email>
</author>
<published>2005-06-05T16:55:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=477606f57d6b1cce3f354d394be26745b92808f7'/>
<id>urn:sha1:477606f57d6b1cce3f354d394be26745b92808f7</id>
<content type='text'>
</content>
</entry>
</feed>
