From: Linus Torvalds Date: Thu, 07 Dec 2006 00:47:54 GMT Subject: Re: Fast access git-rev-list output: some OS knowledge required Message-ID: In-Reply-To: On Thu, 7 Dec 2006, Johannes Schindelin wrote: > > Because, depending on what you do, the revision machinery is not > reentrable. For example, if you filter by filename, the history is > rewritten in-memory to simulate a history where just that filename was > tracked, and nothing else. These changes are not cleaned up after calling > the internal revision machinery. Well, it really wouldn't be that hard to add a new library interface to "reset object state". We could fairly trivially either: - walk all objects in the object hashes and clear all the flags. - just clear all objects _and_ the hashes. Yes, it implies a small amount of manual "management", but considering that the reason it needs to be manual is that the functions simply _need_ the state, is that such a big deal?