LoginSignup
66
69

More than 5 years have passed since last update.

VSCode 環境をgit管理してどこでも同じ環境を引き継ぐ

Last updated at Posted at 2019-02-28

VSCodeの環境をgit管理するメリット

  • どこでも同じ環境を使える
  • 会社で作った環境を自宅でもう一度設定しなくてよい
  • 違う端末にVSCodeをinstallしたときに一瞬で同じ環境が再現できる

なんかポータブルモードとか、Settings Syncとかあるっぽいけど。

VSCodeの環境

環境はだいたい以下の3つで構築されている。

  • settings.json : 設定全般
  • keybindings.json : キーバインド
  • extension(拡張機能)

引き継ぎ方

1. 設定ファイルをgit管理するディレクトリに移動

cd ~/Library/Application\ Support/Code/User/

ここにsettings.jsonkeybindings.jsonがある。

これをgit管理するディレクトリに移動。(自分の場合は/dotfiles/.vscode/においた)

mv settings.json "ファイルを移動したいディレクトリパス"

そして ~/Library/Application\ Support/Code/User/にそれぞれのファイルのシンボリックリンクを貼る。

ln -s "移動したファイルパス/settings.json" "~/Library/Application\ Support/Code/User/settings.json"

2. extention のリスト書き出す

code --list-extensions > extensions

ちなみにcodeコマンドが使えないときはコマンドパレットに「shell」と入力してinstallするとすぐつかえるようになる。

3. 本題、一発で環境設定するファイル

vscode_install.sh
#!/bin/sh

SCRIPT_DIR=$(cd $(dirname $0) && pwd)
VSCODE_SETTING_DIR=~/Library/Application\ Support/Code/User

rm "$VSCODE_SETTING_DIR/settings.json"
ln -s "$SCRIPT_DIR/settings.json" "${VSCODE_SETTING_DIR}/settings.json"

rm "$VSCODE_SETTING_DIR/keybindings.json"
ln -s "$SCRIPT_DIR/keybindings.json" "${VSCODE_SETTING_DIR}/keybindings.json"

# install extention
cat extensions | while read line
do
 code --install-extension $line
done

code --list-extensions > extensions

5. git管理

以下のファイルをgitにあげておく。

  • settings.json
  • keybindings.json
  • extention
  • vscode_install.sh

4. 設定インストール

設定ファイルのリポジトリをgit cloneしてきて以下を実行。

"~/ディレクトリパス"/vscode_install.sh

⚠設定ファイルがある場合は、rmで一旦設定ファイルを削除してシンボリックリンクを貼るので、引き継ぎたい設定がある場合は必ずmvしておく。


おわり。
最近入れて気に入っているextentionは「vscode-spotify」。
spotifyへの画面移動がなくなってとても快適。

その他、VSCodeを使いやすくした

参考 : https://note.mu/teitei_tk/n/n7204cb8d97c5

66
69
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
66
69