PhpStorm 2023.3 Help

Push dialog (Mercurial, Git)

This dialog is available for the following version control systems:

  • Git

  • Mercurial

The dialog consists of two panes (the Repositories pane and the Commit details pane) and the Push controls area.

Repositories pane

The left pane shows a list of Git and Mercurial repositories (as well as which local branch/active bookmark will be pushed to which remote branch), and a list of commits performed in each repository.

  • Hover over a commit: a tooltip is displayed showing the commit number, date and time, author, and the commit message. If the author of a commit is different from the current user, this commit is marked with an asterisk.

  • Select the checkbox next to each repository to which you want to push.

    If you have a multirooted project where repositories are not controlled synchronously, only the current repository is selected by default (or multiple repositories selected in the Project View). For more information about enabling and disabling synchronous repositories control, refer to the following sources:

  • To modify the target branch where you want to push (it is highlighted in blue), click it. The label turns into a text field where you can specify the target branch. You can also switch into the editing mode by selecting the branch that you want to modify and pressing F2.

  • You can also edit the remote repository (if there are multiple ones) in the same way as the remote branch. Note that if no remotes have been specified, the Define remote link will appear instead of a remote name. Click it to add a remote.

  • If there are no remotes in the repository, the Define remote link appears. Click this link and specify the remote name and URL in the dialog that opens.

Commit details pane

The right pane shows which files are included in the selected commit. If you select multiple branches in the left pane, all corresponding commits will be shown.

The toolbar in this area provides the following options:

Item

Tooltip and shortcut

Description

Show Diff

Ctrl+D

Click this button to open the Diff viewer for files dialog that shows the differences between the committed version of the selected file and in the previous version.

Edit Source

F4

Click this button to open the selected file in the editor.

Group by Directory

Ctrl+Alt+P

Click this button to toggle between the flat view and the directory view.

Collapse All / Expand All

Ctrl+NumPad -/Ctrl+NumPad +

Click these buttons to fold/unfold all nodes in the directory tree. These buttons are unavailable if the flat view is selected.

Push controls

The controls in this area allow you to select the following push options:

Item

Description

Push Tags

This option is only available if you are using Git.

By default, when you perform the push operation, tags are not sent to the remote repositories. Select this option if you want to push tags with your commits.

  • Select All if you want to push all tags, including the tags that do not belong to the selected branches you are about to push (equivalent to push --tags).

  • Select Current Branch if you want to push only the tags that belong to the selected branches you are about to push (equivalent to push --follow-tags available since Git 1.8.3).

Export Active Bookmarks

This option is only available if you are using Mercurial.

By default, when you perform the push operation, bookmarks are not sent to the remote repositories. Select this option if you want to push active bookmarks with your commits.

Push

Click this button to push changes to the remote branch, or click the arrow icon on the combo-button and choose Force Push to run the push --force-with-lease command.

For more information about using the push --force-with-lease command and where it may be useful, refer to:

Last modified: 25 March 2024