Log Tab
Alt+9
This tab is only available if you are using Git 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.
Settings_Version_Control_Git.xmlThe 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
Toolbar (some of the toolbar commands are duplicated in the context menu).
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.
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.
Clicking an arrow takes you to the next commit in a long branch:
You can also press the Left and Right keys to jump to the parent/child commit. This is especially useful if you have commits to different repositories and multiple branches all mixed in the Log view.
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 Preferences 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. |
N/A | Click to display previous search patterns. | |
N/A | Click to clear the search and return to the full list of commits. | |
Text Filter Settings | Click to select from the following options:
| |
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. |
Refresh | Click this button to refresh the list of commits. | |
Cherry-pick (for Git) | Click to apply changes from the selected commit to the current branch. | |
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. | |
Presentation Settings | Click to invoke the list of options that let you configure how data is presented in the Log view:
| |
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. | |
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. |
Context menu commands
Item | Description | Available in |
---|---|---|
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 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 |
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 |
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 |
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 | 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.
Toolbar
Many 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. | |
Revert Selected Changes | Click this button to roll back the changes in the selected file. | |
History Up to Here | Click this button to open the History tab for the selected file that lets you explore the history of all file revisions. | |
Group By | Click to choose how you want to group modified files: by directory and/or module. | |
Show Details | Click this button to show the Commit details pane. | |
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. | |
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 commands
Besides the options available on the toolbar, the following commands can be accessed using the context menu.Item | Description | Available in |
---|---|---|
Show Diff | 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 | Click 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. | |
History Up to Here | 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 |
Commit Details
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.
If a commit message references another commit, you can click this commit's hash to jump to it in the log.