VSCodeの環境をgit管理するメリット
- どこでも同じ環境を使える
- 会社で作った環境を自宅でもう一度設定しなくてよい
- 違う端末にVSCodeをinstallしたときに一瞬で同じ環境が再現できる
なんかポータブルモードとか、Settings Syncとかあるっぽいけど。
VSCodeの環境
環境はだいたい以下の3つで構築されている。
-
settings.json
: 設定全般 -
keybindings.json
: キーバインド - extension(拡張機能)
引き継ぎ方
1. 設定ファイルをgit管理するディレクトリに移動
cd ~/Library/Application\ Support/Code/User/
ここにsettings.json
とkeybindings.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を使いやすくした。