Hi list
I have a question as the title indicate. assume the commmit id is ee5r3343. how to know this commit is merged by which commit?
Thanks Lei
threads / discuss / 30795
Subject: how to know this commit is merged by whic commit
Hi list
I have a question as the title indicate. assume the commmit id is ee5r3343. how to know this commit is merged by which commit?
Thanks Lei
Re: how to know this commit is merged by whic commit
On Thu, Jun 14, 2012 at 12:50:59AM +0800, lei yang wrote:
> I have a question as the title indicate. assume the commmit id is > ee5r3343. how to know this commit is merged by which commit?
There is not one answer to "which commit"; there may be an infinite number of commits which merge it into something else. The best you can do is start at some point (e.g., the tip of "master") and walk backwards looking for commits which merge it (and you still may find multiple, if the commit was merged into two other lines of development, each of which was merged into your starting point). There is not an option to do this search automatically, so you would have to use grep, like:
git log --format='%H %P' | grep " $commit" | cut -d' ' -f1
which will list the id of all commits (%H) for which $commit appears in the list of parents (%P).
-Peff
PS You didn't give any background on your problem, but you may also find "git tag --contains" and "git branch --contains" useful.
Re: how to know this commit is merged by whic commit
Jeff King <peff@peff.net> writes:
> On Thu, Jun 14, 2012 at 12:50:59AM +0800, lei yang wrote: > >> I have a question as the title indicate. assume the commmit id is >> ee5r3343. how to know this commit is merged by which commit? > > There is not one answer to "which commit"; there may be an infinite > number of commits which merge it into something else. The best you can > do is start at some point (e.g., the tip of "master") and walk backwards > looking for commits which merge it (and you still may find multiple, if > the commit was merged into two other lines of development, each of which > was merged into your starting point). There is not an option to do this > search automatically, so you would have to use grep, like:
Or you can use "git bisect" ;-).