AppCode 2018.3 Help

Shelve Changes Dialog

VCS | Shelve Changes

Use this dialog box to shelve the selected files or changelists.

This dialog consists of several areas:

Modified files pane

This section contains a list of files that have been modified since the last commit. All files in the list are selected by default. Deselect the files that you do not want to shelve.



Tooltip and Shortcut


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


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 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


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

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

All VCSs


Revert Unchanged Files

Click this button to have unchanged files reverted.


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 shelved.

Commit Message pane

In this area, enter a string that will be used as the shelf name. When you unshelve your changes, a new changelist with the same name will be created in the Local Changes tab. If you leave this field empty, the shelf name will be generated using the following pattern: <number of files in the shelf>, <date and time when the shelf was created>:

shelf names


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

Before Submit / Before Commit section

Use the controls in this area to define which additional actions you want AppCode to perform before putting the selected files to a shelf.

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.

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 AppCode to perform after putting the selected files to a shelf.



Upload files to

From this drop-down list, select the server access configuration to use for uploading the selected 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.

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.

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 shelve.



Tooltip and Shortcut


icons actions previousOccurence svg/icons actions nextOccurence svg

Previous Difference / Next Difference ⇧F7 F7

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

When the last/first difference is hit, AppCode suggests to click the arrow buttons F7/⇧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.


Whitespace list

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

Highlighting mode list

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 svg

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. AppCode cannot compare binary files, so most commands will be unavailable for them.

Last modified: 28 March 2019

See Also