On Wed, 3 Aug 2005, Johannes Schindelin wrote: > > I try to write a "git annotate" based on the output of git-whatchanged.
You can't. It's fundamentally not doable, because you lose the merge information. So you need to use a combination of git-rev-list _and_ git-whatchanged. Use the "--parents" flag to git-rev-list to get the parents output for doing your own graph, if you want to. I have been thinking of adding a "follow this file" mode to git-rev-list, which just ignores all children of merges that used the file directly from one of the other children. Exactly because then you could have a git-rev-list that prunes based on filename, and would potentially be a lot more efficient (not follow the "uninteresting" side of a merge). I haven't gotten around to it, partly because I wonder if it would be better as a separate program - even if that would mean that you'd lose all the cool features of git-rev-list (the ability to limit it to certain versions, and the ability to sort the output in relevant orders). Partly because I'm just too friggin lazy. > P.S.: My only unsolved problem is that git-whatchanged sometimes shows > the diffs in the wrong order (clock-skew problem?) Nope, this is a direct result of two branches modifying the same file in parallel. There is no "right" or "wrong" order. Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html