RubyMine 2017.2 Help

Sharing RubyMine Settings

Why sharing?

It is quite possible that you use one RubyMine license on different machines and on the different operating systems, for example, on your desktop at work and on your laptop at home. Another option is to share settings across a team, so that all the teammates use the same code style, live templates, or file templates. That's why it is vital to be able to share RubyMine settings, which is done by means of export and import.

RubyMine provides Export Settings command that produces the archive settings.jar. This archive contains the global settings differing from the defaults, and is stored locally. If you want to share your global settings, you have to make this archive accessible. You can do this in the numerous ways:

  • Put this archive under version control
  • Place it in your Dropbox
  • Just write it to a flash drive and stick into your pocket.
  • etc.

As soon as the archive of the global settings becomes accessible, it can be imported into another installation of RubyMine using the Import Settings command.

What this tutorial is about

This tutorial aims to walk you through exporting RubyMine global settings, sharing them via VCS, and importing them to a different RubyMine installation.

Out of scope of this tutorial are:

  • Ruby programming
  • Information about the project and IDE settings.
  • Information about using specific version control tools, Dropbox etc.

Before you start

Make sure that you are working with RubyMine. This tutorial is created with RubyMine version 2017.1.

Preparing an example

  • First, we'll change some settings (for example, code style, keymap, and editor color scheme). This step is required, because we are going to export the archive of global settings, that contains only the differences against the default settings.
  • Next, we'll see where the copies of the schemes reside. This step is optional, and is intended just for your information.
  • Finally, we'll put the project under version control. This step can be also considered optional, since, as mentioned above, you can make your archive of global settings accessible in numerous ways.

Creating copies of the various schemes

We are going to create copies of the various schemes (remember, the pre-defined schemes are not editable) to further change and share them. Click /help/img/idea/2017.2/settings.png on the main toolbar to open the Settings/Preferences dialog.

Creating a copy of the code style scheme

Follow these steps:

  1. On the Code Style page of the editor settings, click Manage.
  2. Then, in the Code Style Schemes dialog, select a scheme you want to copy, click the button Save As, and type the new scheme name:
    /help/img/idea/2017.2/copy_code_style_scheme.png

Creating a copy of a keymap

In the Keymap page of the Settings/Preferences dialog, choose a scheme and click Copy:

/help/img/idea/2017.2/copy_keymap.png

Creating a copy of the editor color scheme

Expand the Editor node of the Settings/Preferences dialog, in the Colors and Fonts page, choose the desired scheme, and click the button Save As. Then type the name of the new editor color scheme:

/help/img/idea/2017.2/copy_editor_color_scheme.png

Where the copies of the setting are stored?

As it is mentioned in the page Project and IDE Settings, storage location of the settings depends on your platform. For example, for Windows, the settings are stored in your user home, so it makes sense to look for the copies of the schemes there. Here they are, under the .RubyMine20XX.X\config directory:

/help/img/idea/2017.2/copy_schemes_location_1.png

The copies of the new schemes are added to the global settings, and as such, become sharable:

/help/img/idea/2017.2/copy_schemes_location.png

Putting the project under version control

In this example, we use RubyMine's Git integration. It is supposed that you have Git integration enabled.

To put the project under version control, click /help/img/idea/2017.2/settings.png on the main toolbar to open the Settings/Preferences dialog, then on the Version Control page click /help/img/idea/2017.2/new.png to add a new content root, and choose Git as the version control system:

/help/img/idea/2017.2/add_vcs_mapping.png

Refer to the section Associating a Directory with a Specific Version Control System .

Exporting settings

Let's export the settings. To do that, on the main menu, click File | Export Settings..., and then, in the Export Settings dialog, click the ellipsis to choose the target location. Since we want to use the RubyMine's Git integration, it makes sense to place the exported archive under the project root, to make the archive visible in the Project Tool Window, and make use of the Version Control Tool Window. Next, unselect the check boxes to the left of the unnecessary settings, and then click OK:

/help/img/idea/2017.2/export_settings.png

The settings.jar archive is created in the specified location. Since we have chosen the project root, we see this archive (marked as unversioned file) in the Project tool window, and in the Version Control tool window.

Actually, export is done... the only thing left is to push the archive to the repository. So first, press Ctrl+Alt+A to add the new file to version control, and commit changes:

/help/img/idea/2017.2/export_settings_1.png

Importing settings

What's next? Let us suppose that your teammates have access to your repository and can download your settings archive. Then one has to choose File | Import Settings... in his/her RubyMine installation, and locate the downloaded archive (or its parent directory):

/help/img/idea/2017.2/import_settings_location.png

Next, one has to specify which settings should be imported - one can actually unselect, for example, keymap settings, if he/she is quite happy with his/her keymap:

/help/img/idea/2017.2/import_settings_select_components.png

After clicking OK, RubyMine suggests to restart, for the new schemes to take effect.

More information

You may find it useful to read RubyMine documentation. Refer to the page Exporting and Importing Settings .

Last modified: 21 July 2017