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.
The commits pane consists of the following areas:
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.
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:
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: 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.
|Item||Tooltip and Shortcut||Description|
|Filter||N/A||Use this text box 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. |
You can quickly switch the focus to the search field by pressing Ctrl+L.
|N/A||Click this button to show previous search patterns.|
|N/A||Click this button to clear the search and return to the full list of commits.|
|N/A||Click this button to invoke the following options: |
|Branch||N/A||Use this drop-down list to filter commits by the branch. 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 the 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-root 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.|
|IntelliSort||If this option is enabled, you get a more convenient way to view merges by displaying the incoming commits first, directly below the merge commit.|
|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.|
|Click this button to refresh the list of commits.|
|Go to Hash/Branch/Tag |
|Click this button and specify a hash, tag or branch you want to jump to. 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.|
|Cherry-pick (for Git) |
Graft (for Mercurial)
|Click this button to apply changes from the selected commit to the current branch. |
This button is disabled if the selected commit is already contained in the current branch.
|Highlight non-picked commits||This command is only available if you are using Git as your version control system. |
Click this button to highlight the commits from the selected branch that have not yet been applied to the current branch.
|Quick settings||Click this button to invoke one of the following commands: |
Context menu commands
| Copy Revision Number ||Use this command to copy the revision number of the selected commit to the clipboard.|| Git |
| Create Patch ||Use this command to create a patch based on the selected commit.|| Git |
| Cherry-pick (Git) |
|Use this command to apply the changes from the selected commit to the current branch.|| Git |
|Checkout Revision||Use this command to check out the state of files recorded in the selected commit.||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 |
|New Tag||Use this command to add a new tag to the selected commit.|| Git |
|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 |
|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|
|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|
| Open in 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: ||Mercurial|
Changed files pane
This pane shows a list of files that were modified within the currently selected commit.
ToolbarMany of the options available in the toolbar are duplicated in the context menu.
|Item||Tooltip and Shortcut||Description|
| Show Diff |
|Click this button to open the Differences Viewer for Files where you can compare the current and the previous revision of the selected file.|
| Edit Source |
|Click this button to open the local copy of the selected file for editing.|
|Open Repository Version||Click this button to open the repository version of the selected file for editing.|
|Revert Selected Changes||Click this button to roll back the changes in the selected file.|
|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.|
|Show Details||Click this button to show the Commit details pane.|
| Group by Directory |
|Click this button to transform a flat list of files into a tree of packages with files.|
| Expand All/Collapse All |
| Click this button to expand/collapse all nodes. |
Note that these buttons are only available only when tree-view is enabled.
Context menu commandsBesides the options available on the toolbar, the following commands can be accessed using the context menu.
|Compare with Local||Use this command to compare the selected revision of the file with its current local revision.|| Git |
|Compare Before with Local||Use this command to compare the version of the file before the selected revision with its current local revision.|| Git |
|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 |
This area is displayed when the Show Details 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.