PyCharm 2018.2 Help

Log Tab

View | Tool Windows | Version Control - Log
Alt+9

This tab is only available if you are using Git or Mercurial for version control.

This tab shows all changes committed to all branches of the local and remote repositories, or to a specific branch or repository.

The log is updated automatically in the background mode on every change (a commit, fetch, rebase, etc.), even if the Log tab is closed.

The tab contains the following panes:

  • The Commits pane is located on the left of the tool window and shows the commits to all or selected branches from the local and remote repositories.

  • The Changed Files pane is located on the right of the tool window and shows the list of files that were modified within the selected commit.

  • The Commit Details pane is located on the right under the Changed Files pane and shows the details of the selected commit.

Commits Pane

The commits pane consists of the following areas:

Commits

This area shows a list of all commits performed to the selected branch, or to all branches. For each commit, the list shows the commit message, the author, and the commit date. The latest commit in each branch is supplied with a label with the name of the branch in which it was performed.

There are the following labels:

  • local (Mercurial) and regular (Git/Mercurial) for tags.

  • tip (Mercurial) for the latest revision in the repository.

  • HEAD (Git/Mercurial) for the current working revision.

commit labels

For Git, the color of the label depends on the branch type (local or remote).

For Mercurial, there are different color labels for bookmarks, open heavy branches and closed heavy branches.

Note that clicking an arrow takes you to the next commit in a long branch:

jumpToNextCommit

In multi-repository projects, the colored stripe on the left indicates which root the selected commit belongs to (each root is marked with its own color). Hover the mouse cursor over the colored stripe to invoke a tip that shows the root path:

log root path
You can also enable the Show Root Names option if you want to expand the Roots column with full root names.

Committed changelists often correspond to issues in tracking systems. You can jump to such issues in a browser right from the Commits pane. This functionality is available if:

  • The pattern of the bug tracking system is specified in the Issue Navigation Settings dialog box.

  • The corresponding issue number is mentioned in the commit message.

After issue navigation has been configured, issue numbers in commit messages are rendered as links. Clicking such link brings you to the corresponding page of your issue tracker.

Toolbar

Item

Tooltip and Shortcut

Description

Filter

N/A

Use this field to search through the list of commits. You can enter full commit names or messages or their fragments, revision numbers, or regular expressions. To finalize the search, press Enter or move the focus away from the search field.
find3

N/A

Click to display previous search patterns.

icons actions clear

N/A

Click to clear the search and return to the full list of commits.

icons general gearPlain svg

Text Filter Settings

Click to select from the following options:
  • Regex: anything you type in the search field is treated as a regular expression, for example, #\d+.

  • Match Case: only entries with the matching case count.

Branch

N/A

Use this drop-down to filter commits by branch or favorite branches. If you want to see commits from all local and remote branches, select All.

User

N/A

Use this drop-down list to filter commits by author. To view all commits by a specific author, click Select and start typing the author's name. To view commits by all users, select All.

Date

N/A

Use this drop-down list to filter commits by a time-frame or a specific date. To view commits made on a specific date, click Select and specify the date. To view commits made on all dates, select All.

Paths

N/A

Use this drop-down list to filter commits by the folder (for projects that have one root), or by the root and folder (for multi-rooted projects). To view commits to a specific folder, click Select Folders and specify the folder name. For multi-repository projects, you can also select the check-box next to one or several roots in the Roots section.

icons actions refresh svg

Refresh
Ctrl+F5

Click this button to refresh the list of commits.

platform impl icons cherryPick svg

Cherry-pick (for Git)
Graft (for Mercurial)

Click to apply changes from the selected commit to the current branch.

platform impl icons IntelliSort svg

IntelliSort

If this option is enabled, you get a more convenient way to view merges by displaying incoming commits first, directly below the merge commit.

icons actions show svg

Presentation Settings

Click to invoke the list of options that let you configure how data is presented in the Log view:
  • Compact References View: if this option is enabled, branch references for a single commit are displayed in a collapsed view: compactReferenceView

    If you want to expand each branch reference on a line, deselect this option: expandedReferencesView

  • Show Tag Names: enable this option if you want tag names to be displayed in addition to the tag icon:
    showTagName

    If this option is disabled, you can still view a tag name by hovering the mouse over the tag icon.

  • Show Root Names: enable this option if you want to expand the Roots column on the left showing full root names in a multi-repository project.

    rootNames

  • Show Long Edges: if this option is enabled, long branches are displayed in full, even if there are no commits in them. If this option is disabled (by default), long branches are replaced with a down arrow.

  • Collapse Linear Branches: enable this option to collapse all branches on the graph so that a dotted line is shown instead of successive commits.
    It is also possible to collapse an individual expanded branch by clicking it.

  • Expand Linear Branches: enable this option to expand all collapsed branches to show successive commits on the graph.
    It is also possible to expand an individual collapsed branch by clicking it.

  • Highlight: select if you want to highlight the following:
    • My Commits: bold font

    • Merge Commits: greyed out

    • Current Branch: blue background

    • Non-Picked Commits: greyed out (only available for Git). Non-picked commits are commits from the selected branch that have not yet been applied to the current branch.

icons general add svg

Open Another Log Tab

Click to open a new log tab matching your filters, so that you don't have to set filters back and forth.

icons actions find svg

Go to Hash/Branch/Tag
Ctrl+F

Click this button and specify a hash, tag or branch you want to jump to.

vcs find hash branch tag action
You can select a reference with the same name from different repositories. The name of each repository is displayed on the right along with its color indicator.

Context menu commands

Item

Description

Available in

Copy Revision Number
icons actions copy svg

Use this command to copy the revision number of the selected commit to the clipboard.

Git
Mercurial

Create Patch
icons vcs patch svg

Use this command to create a patch based on the selected commit.

Git
Mercurial

Cherry-pick (Git)
Graft (Mercurial)
platform impl icons cherryPick svg

Use this command to apply changes from the selected commit to the current branch.

Git
Mercurial

Checkout Revision

Use this command to check out the state of files recorded in the selected commit.

Git

Browse Repository at Revision

Use this command to open a snapshot of your project at the selected revision in the Project view.

Git

Update to Revision

Use this command to change your working copy parent revision to the selected commit. New commits will carry on from the revision (commit) you update to.

Mercurial

New Branch

Use this command to create a new branch based on the selected commit.

Git
Mercurial

New Tag

Use this command to add a new tag to the selected commit.

Git
Mercurial

Branch <branch_name> / Branches

This command appears for all branches that point to the selected commit (Branch <branch_name> if there is one branch, or Branches if there are multiple branches) and provides the same options as the ones available from the Branches popup and submenu:

If the Control repositories synchronously option is enabled, and the selected branch exists in multiple repositories, an additional menu option named In All Repositories appears that allows you to perform the same operations in all repositories simultaneously.

Git
Mercurial

Reset Current Branch to Here

Use the command to reset the current branch head to the selected commit. In the Git Reset dialog that opens, select the mode in which the working tree will be updated.

Git

Revert

Use this command to roll back the changes in the selected commit

Git

Undo Commit

This command is only available for the commits made by you, and allows you to revert the changes and undo the selected commit.

Git

Reword

Use this command to edit the commit message for the selected commit.

Git

Interactively Rebase from Here

Use this command to edit the history of the current branch by performing an interactive rebase of all commits after the selected one.

Git

Open in GitHub
tasks core icons github

Use this command to open the page that corresponds to the selected commit on GitHub.

Git

MQ

Use this submenu to manage Mercurial Queues:
  • Import: use this command to turn the selected changeset into a patch.

  • Goto patch: use this command to open the MQ: <project_name> tab that shows a queue of patches that have not been applied yet.

  • Rename Patch: use this command to rename the selected patch.

  • Finish Patches: use this command to turn the selected patch into a permanent changeset.

Mercurial

Changed files pane

This pane shows a list of files that were modified within the currently selected commit.

Toolbar

Many of the options available in the toolbar are duplicated in the context menu.

Item

Tooltip and Shortcut

Description

icons actions diff svg

Show Diff
Ctrl+D

Click this button to open the Differences Viewer for Files where you can compare the current and the previous revision of the selected file.

icons actions rollback svg

Revert Selected Changes

Click this button to roll back the changes in the selected file.

icons vcs history svg

Show History for Revision

Click this button to open the History tab for the selected file that lets you explore the history of all file revisions.

icons actions groupBy svg

Group By

Click to choose how you want to group modified files: by directory and/or module.

icons actions previewDetailsVertically svg

Show Details

Click this button to show the Commit details pane.

icons actions previewDetails svg

Preview Diff

Click to open the Preview Diff pane inside the Log where you can explore the differences between the selected modified file and its repository version.

icons actions expandall svg icons actions collapseall svg

Expand All/Collapse All
Ctrl+NumPad Plus

Click this button to expand/collapse all nodes.

Note that these buttons are only available only when tree-view is enabled.

Context menu commands

Besides the options available on the toolbar, the following commands can be accessed using the context menu.

Item

Description

Available in

Show Diff
icons actions diff svg Ctrl+D

Click to open the Differences Viewer for Files where you can compare the current and the previous revision of the selected file.

Compare with Local

Use this command to compare the selected revision of the file with its current local revision.

Compare Before with Local

Use this command to compare the version of the file before the selected revision with its current local revision.

Edit Source
icons actions edit svg F4

Click to open the local copy of the selected file for editing.

Open Repository Version
icons actions editSource svg

Click this button to open the repository version of the selected file for editing.

Revert Selected Changes
icons actions rollback svg

Click this button to roll back the changes in the selected file.

Show History for Revision
icons vcs history svg

Click this button to open the History tab for the selected file that lets you explore the history of all file revisions.

Show Changes to Parents

Use this command to display changes to both parents for a merge commit to review merge results, and see how exactly conflicts were resolved during a merge.

Git
Mercurial

Commit Details

This area is displayed when the Show Details icons actions previewDetailsVertically svg option is enabled.

This area shows the details on the commit selected in the Commits list, such as the commit message, hash, author, the link to the author's email, date, time, root and branches.

If the selected commit is contained in more than six branches, only the first six are displayed and the Show All link appears that you can click to expand a complete list of branches.

If a commit message references another commit, you can click this commit's hash to jump to it in the log.

Last modified: 12 October 2018

See Also