{"thread":{"id":"13121","subject":"Finding changes in one branch not in two other branch","startedAt":"2008-04-15T11:21:59Z","lastAt":"2008-04-15T19:05:50Z","messageCount":2,"participants":["Aneesh Kumar","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"74433","messageId":"cc723f590804150421j689ef4b1o57b97c937e23db99@mail.gmail.com","threadId":"13121","inReplyTo":null,"subject":"Finding changes in one branch not in two other branch","fromName":"Aneesh Kumar","fromEmail":"aneesh.kumar@gmail.com","sentAt":"2008-04-15T11:21:59Z","receivedAt":"2008-04-15T11:21:59Z","isPatch":false,"sender":{"key":"aneesh.kumar@gmail.com","avatar":"https://gravatar.com/avatar/0621fc0b2f14ead1e9024382f16053a808c148596da30c1b92572fa075621f68?d=mp&s=160"},"body":"Hi,\n\nI am not sure whether it is available. What i am looking for is\n\ngit diff <commit1> <commit2> <commit3>\n\nAnd it should show changes only in in tree represented by <commit1> but not\nin both <commit2> and <commit3>\n\nTo show a workflow:\n\nkernel releases 2.6.20 and the project release patchset on top of 2.6.20\nkernel release 2.6.21 and project release patchset on top of 2.6.21\n\nThe second release involve some bug fixes for the project.\n\nThe intention is to find out  what changed in project with the release\nof 2.6.21 patchset\n. The easiest is look at diff of diff. But if git can do it for me why not ??\n\n-aneesh\n"},{"id":"74467","messageId":"7viqyjx7jl.fsf@gitster.siamese.dyndns.org","threadId":"13121","inReplyTo":"cc723f590804150421j689ef4b1o57b97c937e23db99@mail.gmail.com","subject":"Re: Finding changes in one branch not in two other branch","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-04-15T19:05:50Z","receivedAt":"2008-04-15T19:05:50Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Aneesh Kumar\" <aneesh.kumar@gmail.com> writes:\n\n> To show a workflow:\n>\n> kernel releases 2.6.20 and the project release patchset on top of 2.6.20\n> kernel release 2.6.21 and project release patchset on top of 2.6.21\n>\n> The second release involve some bug fixes for the project.\n>\n> The intention is to find out what changed in project with the release of\n> 2.6.21 patchset\n\nThat depends on your definition of what a patchset is.\n\nIf it is a set of files, each file has a patch to one or more files to\nimplement a logically independent and complete change (i.e. corresponds to\nwhat a commit should be), then you can run git-patch-id on each of them to\nfind the duplicates in these two sets (you do not need a git repository to\ndo this, as patch-id is a freestanding operation).\n\nIf you mean a single file that contains the difference between the vanilla\n2.6.21 and their version, then you cannot do much better than running\ninterdiff, I'd guess.\n \n"}]}