git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Git log three-dot notation: include merge base

From
RDRobert Dailey <rcdailey.lists@gmail.com>
Date
May 14, 2016, 23:09 UTC
Message-ID
<CAHd499A_AN0U7gj8Yp0pBGGZ6deNrDJ4F4npAKy6a2U0+uTsxg@mail.gmail.com>
If you consider a simple case where I run the following command:
$ git log --oneline --graph --decorate A...B

Where A and B are both branches with a single merge base and a series of commits on each branch. Very simple example with no loops or crazy ancestry. Below is an example repo I set up, where I show the whole repository log graph:

$ git log --oneline --decorate --graph --all
* eb28ae4 (HEAD -> B) Commit 6
* 7173fa1 Commit 5
* b5fe27b Commit 4
| * 37a8ca8 (A) Commit 3
| * 72745a7 Commit 2
|/
* ffc8040 Commit 1
Using A...B notation, I get this:
$ git log --oneline --decorate --graph A...B
* eb28ae4 (HEAD -> B) Commit 6
* 7173fa1 Commit 5
* b5fe27b Commit 4
* 37a8ca8 (A) Commit 3
* 72745a7 Commit 2

The graph no longer makes any sense, and isn't helpful to me at all. This is because the merge base commit isn't shown. I understand this is "by-design", but is there a way to include it? It's necessary to have it, for this graph to make sense.

Next: Jeff King
Message 1 of 4 in “Git log three-dot notation: include merge base”
  1. Robert DaileyMay 14, 2016
  2. Jeff KingMay 14, 2016
  3. Junio C HamanoMay 14, 2016
  4. Robert DaileyMay 14, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.