New in 11: Git log gets more power

The most exciting news for me is that now in forthcoming IntelliJ IDEA 11, we show Git revisions graph!

Now that IntelliJ IDEA can visualize commits links, we’ve added context actions to tag a commit, create (and checkout) new branch, and checkout a selected revision.

I want to specifically mention the highlight actions — now you can see what commits are in “ancestors subgraph” for a selected commit. By default, IntelliJ IDEA shows HEAD subgraph, i.e. you see what commits you have in your working tree now.

It is really convenient when you are checking what commits went into some tag (or branch).

To find any commit in git log (in already shown part), use the new “Goto Commit” action — type commit hash, or description fragment, or branch or tag name, and be navigated to it.

And, finally — when browsing history, sometimes you work with a set of commits and need to track this set.

Now you can mark commits by simply pressing Space and they get stared.

Comments below can no longer be edited.

18 Responses to New in 11: Git log gets more power

  1. Avatar

    Dirk says:

    November 14, 2011

    Just one word: Sweet!

  2. Avatar

    Behrang says:

    November 14, 2011

    Nice! IMHO the graph should be anti-aliased.

  3. Avatar

    SebCorbin says:

    November 14, 2011

    Sorry, I’ll say another one: Awesome!

  4. Avatar

    Mattias J says:

    November 14, 2011

    When will this be in the EAP?

  5. Avatar

    jdoe says:

    November 14, 2011

    Yep, antialiasing FTW! 😉

    Anyway – great enhancement. Too many times I feel forced to drop to the command line and/or gitg. And sweet memories of working with hgeclipse brings some bitter taste when staring at the very rudimentary Idea git log viewer. 😉

    Looking forward to 11.

  6. Avatar

    magicprinc says:

    November 15, 2011

    Please! Add same love to mercurial plugin.
    _HG_ is new SVN for corp developers, not git.

  7. Avatar

    Irina Chernushina (JetBrains) says:

    November 15, 2011

    Yes, sure, antialiasing should be done

    @Mattias it is already in 110.365, http://confluence.jetbrains.net/display/IDEADEV/IDEA+11+EAP

  8. Avatar

    Yann says:

    November 15, 2011

    Is there anyway that we can have a similar visual graph of commits for a very specific source file so we can see its activity across branches? For instance, in IntelliJ CVS integration we can right mouse click on a file and show CVS history, it shows all the revisions for the file across branches. Would love to have something similar with the Git integration.

  9. Avatar

    Rafal says:

    November 15, 2011

    The same for Mercurial please!!!

  10. Avatar

    Mykola says:

    November 17, 2011

    Great feature, very good. But a bit slow yet. On the repository of 5895 commits it takes quite a while to load the graph. Are there plans to improve performance in pipeline, or should I create a ticket for that?

  11. Avatar

    Irina Chernushina (JetBrains) says:

    November 17, 2011

    @Yann, you can see file history exactly the same way as for CVS.
    @Mykola I would appreciate performance snapshots! =)

  12. Avatar

    Yann says:

    November 18, 2011

    @Irina, it does show the file history for the current checked out git branch, but what about changes that are on other branches? You don’t see them, unless I have missed something.

  13. Avatar

    Irina Chernushina (JetBrains) says:

    November 18, 2011

    @Yann You can also use Structure filter in git log, but unfortunately it does not work across renames right now. (If the item that we filter by was renamed, revisions before rename are not shown)

  14. Avatar

    Brice says:

    November 21, 2011

    @Irina & intellij team great work 🙂
    Waiting for the mercurial equivalent, but I’m patient ;P

  15. Avatar

    Sven says:

    November 22, 2011

    Awesome… But a little bit slow!

  16. Avatar

    Yann says:

    November 25, 2011

    @Irina what do you think of the following ideas?

    1) Add another VCS Git action on a file alongside show history, something like Filter in Git Log so that it does filter the log for the selected file so you don’t need to navigate in the actual Git log to find the file to filter on.

    2) Add an option in the Git Show History so that you can add the –all in the git log command and you then render a new column that shows the branch name (if you could show as a tree like in the CVS show history that would be awesome).

  17. Avatar

    Irina Chernushina (JetBrains) says:

    December 1, 2011


    1) Yes, it’s a good idea! We also wanted to do this. It just haven’t been done yet.
    2) In fact, it works already: if you run git log without any filters, it shows “git log –all” results
    Branches that commit belongs to are shown in the bottom of the details pane (“Contained in branches”).
    It would kill performance if we show branches for every commit just in separate column.
    We just show branches for the selected commit, and cache them for the case if you select that commit again.
    Also, as I have said above, for the case when you don’t filter results, you can highlight all commits belonging to a branch.

  18. Avatar

    Irina Chernushina (JetBrains) says:

    December 1, 2011

    NB We had some questions concerning the place where revision graph and git log is located in IntelliJ IDEA (and other products).

    – You can see git log for the current project in Changes toolwindow, in “Log” tab, or
    – VCS -> Browse VCS Repository -> Show Git Repository Log… – for any optional repository (ies). (You can even open git log for several repositories combined in one table)

Discover more