Re: [PATCH 3/3] Make clear_commit_marks() clean harder
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jul 3, 2006, 13:56 UTC
- Message-ID
- <Pine.LNX.4.63.0607031553570.29667@wbgn013.biozentrum.uni-wuerzburg.de>
- In-Reply-To
- <7vejx3rq33.fsf@assigned-by-dhcp.cox.net>
Hi,
On Mon, 3 Jul 2006, Junio C Hamano wrote:
Show 6 quoted lines
> Rene Scharfe <rene.scharfe@lsrfire.ath.cx> writes: > > > Don't care if objects have been parsed or not and don't stop when we > > reach a commit that is already clean -- its parents could be dirty. > > There is something quite wrong with this patch.
I always had the feeling that it was wrong to traverse not-yet-parsed parents: How could a revision walk possibly come to a certain commit without at least one continuous history of now-parsed objects?
Also, AFAIK the revision walk sets flags for each commit it touched, and we should not try to be smart-asses about the flags, but just unset these flags.
BTW some very quick tests showed that the clear_commit_marks() thing that I sent to the list was much faster than traversing all objects (which was in my original version).
Ciao, Dscho