IntelliJの設定を端末間で共有する

  • 89
    Like
  • 2
    Comment
More than 1 year has passed since last update.

スクリーンショット 2016-08-09 11.45.46.png

目的

IntelliJを複数台の端末に入れていると、キーマップ等を同期したくなります。
この記事ではSetting Repository(GitHub)プラグインを使って同期する方法を共有します。
(基本的には上記GitHubリポジトリのREADMEを読んでそのまま設定するだけです)
PyCharm/PhpStorm/RubyMine等のJetBrainsの他製品についても同じように設定を共有できると思います(未確認)

【注】Qiita等で例えばこちらの記事のようにConfiguration pluginを使った同期方法が書いてありますが、現在はDeprecatedのようです。

Setting Repositoryのインストール

(製品によっては最初からインストール済の場合もあるようです。ma7ma7pipipiさんよりコメント欄にて教えて頂きました)

[Settings] => [Plugins] => [Browse repositories] => Settings Repositoryで検索

スクリーンショット 2015-12-31 22.33.44.png

インストール後再起動します。

設定

[File] => [Setting Repository]から設定をします。

スクリーンショット 2015-12-31 22.48.16.png

共有用のUpstream URLが要求されます。githubのリポジトリが使えるので、空のリポジトリを用意し、URLを入力します。

スクリーンショット 2015-12-31 22.48.59.png

ここでgithubへのusername/passwordが求められますが、トークンを使ったアクセスが推奨されています。
githubでトークンを発行し、usernameにトークンを入力、passwordは空でOKを押して完了です。
(githubでのトークンの発行の仕方はこちらに書いてあります。[Settings] => [Personal access tokens]から作れます。)
スクリーンショット 2015-12-31 23.05.26.png

これで設定は終わりです。同じ設定を複数台に行うことで同期が出来ます。

同期

同期のタイミングは

  • after successful completion of "Update Project" or "Push" actions,
  • on application exit or project close.

となっています(GitHub: Setting Repositoryより)。

ただ、僕は今のところ他端末の変更(リポジトリ上の変更)がローカルに反映されるためには明示的に[VCS] => [Sync Settings] => [Overwrite Local]してからでないと反映に成功していません。
(変更のレポジトリへの反映には明示的な操作([VCS] => ...)は必要ないようです)

同期がうまくいかないとき...

localのリポジトリの中のkeymapのファイルを直接gitのコマンドで同期させるのも出来ます。
ファイルの場所のこちらの記事にかいてあります。
Macなら Library/Preferences/IntelliJIdeaXXXX/settingsRepository/repository になります。