RubyMine 8.0 Help

Create Patch Dialog

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

Use this dialog box to generate a patch file for the specified changelist or files.

Use this dialog box to create a patch from the selected changelist or files.

This dialog box consists of several areas:

Modified files pane

This section contains a list of files that were modified since the last commit. All files in this list are selected by default. Deselect the check-boxes next to the files that you want to exclude from the patch.


ItemTooltip and ShortcutDescriptionAvailable in
icon_showDiff Show Differences
Click this button to open the Differences dialog box that points at the inconsistencies between your local working copy of the selected file and the file in the repository. All VCSs
moveChangelistItems 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
refresh Refresh Changes
Click this button to reload the Changed files tree view so it is up-to-date. All VCSs
rollbackSVN Rollback Click this button to revert all changes made to the local working copy of the selected file(s). All VCSs
edit Jump to source
Click this button to open the source code of the selected file in the editor.All VCSs
vcsToolbarRevertUnchangedIcon Revert Unchanged FilesClick this button to revert the files that have not been modified locally. Subversion
vcsToolbarGroupByDirIcon Group by Directory
Click this button to toggle between the flat view and the directory tree view. All VCSs
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 N/A 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 and deleted files. This area also shows how many files of each type are shown, and how many of them will be included in the patch.

Commit Message pane

The comment you enter in this area will be used as the name of the patch file.


Icon and TooltipShortcutDescription
check_commit_message_spelling Check commit message spelling N/A Click this icon if you want to automatically check the spelling in your commit messages.
commit_message_history Commit Message History Ctrl+M Click this icon to invoke the Commit Message History dialog that contains a list of your twenty-five last commits and the corresponding commit messages.

Details pane

The Details 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 want to include in the patch.


ItemTooltip and ShortcutDescription
arrowUparrowDownPrevious Difference / Next Difference Shift+F7 F7
Use these buttons to jump to the next/previous difference.

When the last/first difference is hit, RubyMine 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.

Compare Previous/Next File
Click these buttons to compare the local copy of the previous/next file with its update from the server.
edit 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
Use this drop-down list to choose the desired viewer type. The default viewer has two panels; the unified viewer has one panel only.

Both types of viewers enable you to

  • Edit, for example, type text. 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.
  • Perform the Apply/Append/Revert actions.
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.
Highlighting mode
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.
collapseAll Collapse unchanged fragmentsClick this button to collapse all unchanged fragments in both files. The amount of non-collapsible unchanged lines is configurable in the Diff settings page.
sync_scrolling 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.
cogwheel_blue 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.
external_toolShow diff in external toolClick 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.

Click this button to show the corresponding help page.

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

After you've selected the files you want to commit, click the Create Patch button and specify the patch file options in the dialog that opens.

See Also



Last modified: 5 November 2015