Re: Bad objects error since upgrading GitHub servers to 1.6.1
flat view
From: Jeff King <hidden>
Date: 2016-06-15 22:46:03
On Wed, Jan 28, 2009 at 08:09:00AM -0800, Shawn O. Pearce wrote:
I don't think its right to ignore broken UNINTERESTING chains all of the time. Today we would see fatal errors if I asked for git log R ^C and A was missing, but R and C are both local refs. I still want to see that fatal error. Its a local corruption that should be raised quickly to the user. In fact by A missing we'd compute the wrong result and produce D-E too, which is wrong.
I think you wrote this before reading the other part of the thread where
we see that many of these checks are not in C git. But to be clear, even
without Junio's patches the exact case I mentioned is not currently
reported as an error (i.e., will produce incorrect results). I tested
with:
-- >8 --
commit() {
echo $1 >$1 && git add $1 && git commit -m $1 && git tag $1
}
mkdir repo && cd repo && git init
commit A
commit B
commit C
commit D
git checkout -b other B
commit E
commit F
rm -f .git/objects/`git rev-parse E | sed 's,^..,&/,'`
git log F..D
-- 8< --
which shows A-B-C-D.
-Peff