From: Jonathan del Strother Date: Wed, 22 Aug 2012 15:15:52 GMT Subject: Re: [Q] Comparing differences introduced by two commits? Message-ID: In-Reply-To: <2794881.R5SsgFdXjR@laclwks004> On 22 August 2012 13:10, Brian Foster wrote: > > Hello, > > I have two commits A and B. They are on separate branches. > Commit A is a older version of B. I want to see what, if > any, differences there are between what commit A changes > and what commit B changes. (The relative positions of > two commits may also differ in the two branches; that is, > there may have been some commit re-ordering.) > > Ideally, the contents of the commit-message are also taken > into account (albeit things like the commit-Id, dates, and > so on will differ and therefore should be ignored). > > I realize the history leading up to each commit can itself > cause what the commits change to differ, even if the "net > result" of the two commits is the same. For my purposes, > this is a noise issue, and I'm happy to consider A and B > as not causing the same changes (i.e., as being different), > albeit if the only difference is the line numbers, then it > would be nice to ignore that. > > In the past I've done: > > diff <(git show A) <(git show B) > > which produces rather messy output but is Ok when dealing > with just one or two sets of A/B commits. I now have a > large-ist set of A/B commits, and the above is impractical. > > Some searching hasn't found any suggestions I'm too happy > with, albeit I've very possibly overlooked something. What about cherry picking B onto A, then showing the cherry-picked commit? Off the top of my head : git checkout A git cherry-pick B git show HEAD -Jonathan