Re: Problem with pack
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Aug 25, 2006, 09:12 UTC
- Message-ID
- <Pine.LNX.4.63.0608251104410.28360@wbgn013.biozentrum.uni-wuerzburg.de>
- In-Reply-To
- <44EEB8AD.5080703@arces.unibo.it>
Hi,
On Fri, 25 Aug 2006, Sergio Callegari wrote:
> git verify-pack -v pack-ebcdfbbda07e5a3e4136aa1f499990b35685bab4.idx > fatal: failed to read delta-pack base object 2849bd2bd8a76bbca37df2a4c8e8b990811d01a7
Eeeh! Not good.
> 1) I am working on both a pc and a notebook, syncing the two everytime I move > from one to the other.
So, you still have one "good" version? Please make a backup immediately. (If only to reproduce the problem.)
> On the PC I have git 1.4.2, on the notebook git 1.4.0. I am using "unison" as > a syncing tool. > Might the data loss have something to do with... > - the version of git I am using or the mixing of two versions?
We tried very hard to maintain backward compatibility. So, it should be fine.
> - the syncing? I have noticed that after a sync, git is not immediately in a > happy state...
That is okay. The "index" (remember, git has a staging area called "index") stores ctimes and mtimes, and these are not synced.
> 2) git unpack-objects seems to be able to extract some objects from the pack, > but at a certain point it dies. > - does it die on the first error or does it try to extract everything that is > possible to extract after the error?
Since unpack-objects does not use the index, it cannot extract anything after the first error. We _could_ enhance unpack-objects to be nice and optionally take a pack-index to try to reconstruct as many objects as possible.
BTW I'd recommend not syncing with unison, but with the git transports: If your PC and Laptop are connected, you could do something like
git pull laptop:my_project/.git
(Of course, you have to adjust it for your setup.) This would sync your repository on the PC with the one on the laptop.
Hth, Dscho