PhpStorm 2018.2 Help

Commit Changes Dialog

VCS | Commit Changes
View | Tool Windows | Version Control - Local Changes - Context menu of a file or a changelist - Commit Changes

Use this dialog box to commit (check in) changes from the selected changelist to the repository and, optionally, to create a patch file.

This dialog box consists of several areas:

The options available in this dialog depend on the version control system you are using.

Modified files pane

This section contains a list of files that have been modified since the last commit. Deselect the check-boxes next to the files that you want to exclude from current commit.



Tooltip and Shortcut


Available in

icons actions diff svg

Show Differences

Click this button to open the Differences dialog box that highlights the differences between your local working copy of the selected file and its repository version.

All VCSs

icons actions refresh svg

Refresh Changes

Click this button to reload the Changed files tree view so it is up-to-date.

All VCSs

show unversioned icon

Show Unversioned Files

Click this button if you want to see newly added files that have not been added to version control yet under the Unversioned Files node.


icons general add

Add to VCS

Click this button to move the files selected under the Unversioned Files node to the active changelist, so that they are added to your version control system during the commit.

All VCSs


Move to Another Changelist

Click this button to add the selected file(s) to another changelist. The Move to Another Changelist dialog box opens where you can select an existing changelist or create a new one.

All VCSs

icons general remove svg


Click this button to delete the selected file.



Click this button to leave the selected files unversioned.

All VCSs

icons actions rollback svg


Click this button to revert all changes made to the local working copy of the selected files.

All VCSs

icons actions edit svg

Jump to source

Click this button to open the source code of the selected file in the editor.

All VCSs


Revert Unchanged Files

Click this button to revert the files that have not been modified locally.



Group by Directory

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

All VCSs

icons actions expandall svg
icons actions collapseall svg

Expand or collapse all nodes
Ctrl+NumPad Plus
Ctrl+NumPad -

Click these buttons to expand or collapse all nodes in the directory tree. These buttons are not available in flat view.

All VCSs

Change list


From this drop-down list, select the changelist that contains the modified files to be checked in or included in the patch. The active changelist is selected by default.

All VCSs

The summary under the modified files pane shows statistics on the currently selected changelist, such as the number of modified, new, deleted and unversioned files. This area also shows how many files of each type are shown, and how many of them will be committed.

Commit Message pane

In this area, enter a comment to the current commit. You cannot commit your changes until you enter some description in the Commit Message field.

This comment will also be used as the name of the patch file, if you decide to create a patch.

You can click icons general messageHistory to choose from the list of recent commit messages.

VCS-specific controls

The controls in this section are located in the top-right part of the dialog, and contain the options that are specific for the version control system you are using.



Available for


Use this drop-down list to select the author of the changes that you are going to commit. This may be useful when you are committing changes made by another person.


Amend commit

Select this checkbox to replace the previous commit with the current changes (see Git Basics: Undoing Things for details).

Git, Mercurial

Sign-off commit

Select this option if you want to sign off your commit, i.e. to certify that the changes you are about to check in have been made by you, or that you take the responsibility for the code in question.

When this option is enabled, the following line is automatically added at the end of the commit message: Signed off by: <username>


Keep files locked

Select this checkbox to keep the changed files locked after they are checked in.



This area is available only if you select the Enable Perforce Jobs Support checkbox on the Perforce Settings page.

Use the controls in this area to search for Perforce jobs, link jobs to the selected changelist, and detach the currently linked jobs.

  • icons general remove svg Unlink selected jobs: click this button to detach the selected job from the changelist.

  • icon openLocalVersion Edit associated jobs: click this button to open the Edit Jobs Linked to Changelist dialog where you can search for available jobs, view their details, and link jobs to the selected changelist.

  • icons general add svg Find and link job matching the pattern: click this button to start quick search for the job that matches the pattern specified in the text box and attach the job to the changelist.
    In the text box, specify the exact name of the job or a search pattern according to the Perforce jobs syntax rules.

The list box in the bottom of the area displays the jobs that are currently attached to the selected changelist.


Before Submit / Before Commit section

Use the controls in this area to define which additional actions you want PhpStorm to perform before committing the selected files.

These controls are available for the following version control systems:

  • Git

  • CVS

  • Subversion

  • Perforce



Reformat code

Select this checkbox to perform code formatting according to the Project Code Style settings.

Rearrange code

Select this checkbox to rearrange your code according to the arrangement rules preferences.

Optimize imports

Select this checkbox to remove redundant import statements.

Perform code analysis

Select this checkbox to run code inspection on the files you are about to commit.

Check TODO (<filter name>)

Select this checkbox to review the TODO items matching the specified filter. Click the Configure link to choose an existing TODO filter, or open the TODO settings page and define a new filter to be applied.


Select this checkbox if you want to automatically apply the current inspection profile to the files you are going to commit.

Revert unchanged files

Select this checkbox to revert the files that have not been modified.

This option is only available for Perforce.

After Submit / After Commit section

Use the controls in this area to define which additional actions you want PhpStorm to perform after committing the selected files.



Available for

Run tool

From this drop-down list, select the external tool that you want PhpStorm to launch after the selected changes have been committed. You can select a tool from the list, or click the Browse button browseButton and configure an external tool in the External Tools dialog box that opens.

All VCSs

Upload files to

From this drop-down list, select the server access configuration to use for uploading the committed files to a local or remote host, a mounted disk, or a directory. To suppress uploading, choose None. To add a server configuration to the list, click browseButton and fill in the required fields in the Add Server dialog that opens.

All VCSs

Always use selected server

Select this checkbox to always upload files to the selected server access configuration.

The drop-down list and the checkbox are only available if the Remote Hosts Access plugin is enabled.

All VCSs

Tag committed files

Select this checkbox to assign a tag to the committed files and type the name of the tag. To replace a previously assigned tag with a new one, select the Override existing tags option.


Auto-update after commit

Select this checkbox to automatically update your project after the commit. Enabling this option will help prevent your working copy against the mixed-revision state.

The mixed-revision state of a working copy may affect the Move and Rename refactoring applied to folders, in which case items in revisions different from the moved subtree root will be tracked separately, which can be confusing.

When the Auto-update after commit option is enabled:

  • Merge will fail with an error if the merge target is a mixed-revision working copy.

  • Your own changes will never cause a 409 conflict.


Diff pane

The Diff pane is hidden by default. To unfold it, click the arrow button unfold next to the pane title.

In this pane you can explore the differences between the base repository version of the selected file, and the version you are about to commit.



Tooltip and Shortcut


icons actions previousOccurence svg/icons actions nextOccurence svg

Previous Difference / Next Difference Shift+F7 F7

Use these buttons to jump to the next/previous difference.

When the last/first difference is hit, PhpStorm suggests to click the arrow buttons F7/Shift+F7 once more and compare other files, depending on the Go to the next file after reaching last change option in the Differences Viewer settings.

This behavior is supported only when the Differences Viewer is invoked from the Version Control tool window.

icons actions back svg
icons actions forward svg

Compare Previous/Next File

Click these buttons to compare the local copy of the previous/next file with its update from the server.

icons actions edit svg

Jump to Source

Click this button to open the selected file in the active pane in the editor. The caret will be placed in the same position as in the Differences Viewer.

Viewer type

diffViewer type

Use this drop-down list to choose the desired viewer type. The side-by-side viewer has two panels; the unified viewer has one panel only.

Both types of viewers enable you to

  • Edit code. Note that one can change text only in the right-hand part of the default viewer, or, in case of the unified viewer, in the lower ("after") line, i.e. in your local version of the file.

  • Perform the Apply/Append/Revert actions.


diffViewer whitespaces
Use this drop-down list to define how the differences viewer should treat white spaces in the text.
  • Do not ignore: white spaces are important, and all differences are highlighted. This option is selected by default.

  • Trim whitespaces: ("\t", " "), if they appear in the end and in the beginning of a line.
    • If two lines differ in trailing whitespaces only, these lines are considered equal.

    • If two lines are different, such trailing whitespaces are not highlighted in the By word mode.

  • Ignore whitespaces: white spaces are not important, regardless of their location in the source code.

  • Ignore whitespaces and empty lines: the following entities are ignored:
    • all whitespaces (as in the 'Ignore whitespaces' option)

    • all added or removed lines consisting of whitespaces only

    • all changes consisting of splitting or joining lines without changes to non-whitespace parts.
      For example, changing a b c to a \n b c is not highlighted in this mode.

  • Ignore imports and formatting: changes within import statements and whitespaces are ignored (whitespaces within String literals are respected though).

Highlighting mode

diffViewer highlight
Select the way differences granularity is highlighted.
The available options are:
  • Highlight words: the modified words are highlighted

  • Highlight lines: the modified lines are highlighted

  • Highlight split changes: if this option is selected, big changes are split into smaller 'atomic' changes.
    For example, A \n B vs. A X \n B X will be treated as two changes instead of one.

  • Do not highlight: if this option is selected, the differences are not highlighted at all. This option is intended for significantly modified files, where highlighting only introduces additional difficulties.

icons actions collapseall svg

Collapse unchanged fragments

Click this button to collapse all unchanged fragments in both files. The amount of non-collapsible unchanged lines is configurable in the Diff & Merge settings page.

icons actions synchronizeScrolling

Synchronize scrolling

Click this button to scroll both differences panes simultaneously. If this button is released, each pane can be scrolled independently.

disable editing

Disable editing

Click this button to enable editing of the local copy of the selected file, which is disabled by default. When editing is enabled, you can make last-minute changes to the modified file before committing it.

icons general gearPlain svg

Editor settings

Click this button to open a drop-down list of available options. Select or clear these options to show or hide line numbers, indentation guides, white spaces, and soft wraps.

icons general externalToolsSmall

Show diff in external tool

Click this button to invoke an external differences viewer, specified in the External Diff Tools settings page.

This button only appears on the toolbar when the Use external diff tool option is enabled in the External Diff Tools settings page.

icon help


Click this button to show the corresponding help page.

Note that the options listed above are available for text files only. PhpStorm cannot compare binary files, so most commands will be unavailable for them.

Submit / Commit button

Click this button to commit the selected files, or hover your mouse over this button to display one of the following available commit options:

  • Commit and Push: select this option to push the changes to the remote repository immediately after the commit. This option is available if you are using Git or Mercurial as a version control system.

  • Create MQ Patch: select this option to create an MQ patch based on your changes. This option is only available if you are using Mercurial as a version control system.

  • Create Patch: select this option if you want PhpStorm to generate a patch based on the changes you are about to commit. In the Create Patch dialog that opens, type the name of the patch file and specify whether you need a reverse patch.

  • Remote Run: select this option to run your personal build. This option is only available when you are logged in to TeamCity. Refer to TeamCity plugin documentation for details.

Last modified: 21 November 2018

See Also