From: Linus Torvalds Date: Fri, 22 Apr 2005 23:27:08 GMT Subject: Re: [ANNOUNCE] git-pasky-0.6.3 && request for testing Message-ID: In-Reply-To: <20050422230551.GI21204@pasky.ji.cz> On Sat, 23 Apr 2005, Petr Baudis wrote: > > Just FYI, this is bug in core git's diff-cache; Nice find. Yes, I told you guys I hadn't tested it well ;) "diff-cache" does the same "diff trees in lockstep" thing that "diff-tree" does, but it's actually more complex, since the _tree_ part always needs to be recursively followed, while the _cache_ part is this linear list that is already expanded. Which just made the whole algorithm very messy. Once I found out how nasty it was to do that compare, I was actually planning to re-write the thing using the same approach that "read-tree -m " does - ie move the tree information _into_ the in-memory cache, at which point it should be absolutely trivial to compare the two. But since the horrid algorithm seemed to end up working, I never did. I'm not even going to debug this bug. I'm just going to rewrite diff-cache to do what I should have done originally, ie use the power of the in-memory cache. That's also automatically going to properly warn about unmerged files. Give me five minutes ;) Linus