Re: Find the starting point of a local branch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



In message <20121224035825.GA17203@zuhnb712>, Woody Wu writes:

    How can I find out what's the staring reference point (a commit number
    or tag name) of a locally created branch? I can use gitk to find out it
    but this method is slow, I think there might be a command line to do it
    quickly.

The answer is more complex than you probably suspected.

Technically, `git log --oneline mybranch | tail -n 1` will tell you
the starting point of any branch.  But...I'm sure that isn't what you
want to know.

You want to know "what commit was I at when I typed `git branch
mybranch`"?  The problem is git doesn't record this information and
doesn't have the slightest clue.

But, you say, I can use `gitk` and see it.  See?  Right there.  That
isn't (necessarily) the "starting point" of the branch, it is the
place where your branch diverged from some other branch.  Git is
actually quite able to tell you when the last time your branch
diverged from some other branch.  `git merge-base mybranch master`
will tell you this, and is probably the answer you were looking for.
Note that this is the *last* divergence.  If your branch diverged and
merged previously that will not be reported.  Even worse, if you did a
fast-forward merge (I recommend against them in general) then it is
impossible to discover about what the independent pre-merge history
was really like.

					-Seth Robertson
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]