長年 Linux でコードを書いてきたが近頃 Windows 10 pro に移行しつつあるので開発環境構築をメモする。 主に使うのは次のツール。
desktop.github.com gitforwindows.org hub.docker.com code.visualstudio.com
基本方針
- Docker for windows で開発環境を整える
- Windows Subsystem for Linux は使わず git bash を活用する
- git bash だけだと複数タブが使えないなどのデメリットがあるので、 VS Code 内で git bash を使う
主にRubyで開発を行うことが多いのでローカルにRubyは入れずに Docker for windows で開発することにする。 Windows Subsystem for Linux は使ってもよいのだが次の理由でいまいちなので使わない。
c\
ドライブを/mnt/c/
で mount するので path まわりで不都合が発生することがある- Windows Subsystem for Linux 内で docker デーモンを立ち上げることができず、結局ホストOSの Docker for windows を使う必要がある
- Windows Subsystem for Linux がなくてもとりあえず git bash で入る Linux コマンドで事足りる
git bash は簡単にインストールできる割に bash と git が動く環境がさくっと手に入るので気に入っている。 カスタマイズ性は高くないのでいろいろコマンドを入れたいなら Windows Subsystem for Linux を使うか、 MSYS2 などを使うといいだろう。
ただ、git bash には screen や tmux のようなソフトが入っておらずタブ機能もない。 複数のウインドウを立ち上げてもいいのだが、僕は VS Code のターミナル機能を使うことにした。 VS Code で `Ctrl + Shift + `` を押すと新しいターミナルが立ち上がる。VS Code の設定で git bash が立ち上がるように設定しておけばよい。 ターミナルが起動すると次のようになる。
注意点
改行コード関係
Web 系の開発ではほかのエンジニアがMac や Linux を使っていることが多いと思うので改行コードが LF になるようにした方がよい。 次の設定を行わない場合、自動的にファイルの改行コードが CRLF になる可能性があるので気を付ける必要がある。
git bash インストール時の注意点
上記の記事にあるが git bash インストール時に文字コードまわりの選択があって、これがデフォルトでは LF を CRLF に変換する設定になっている。
そのため、 Checkout as-is, commit as-is
を選択して git では改行コードの置換を行わないようにする。
インストール後にこの設定を変更するには次のコマンドを実行する。
git config --global core.autoCRLF false
VS Code の設定
VS Code のデフォルトの改行コードを LF になるように変更する。
{ ... "files.eol": "\n", ... }