POSTSCRIPT
WSL上のソフトウェアを使ってビルドなりコードチェックするなりする人は
VSCodeのExtentionであるRemote WSL
(またはRemote Development
というExtension Pack)
を利用すれば,VSCode (remote-wsl) のGitもWSLのものを使うことになっている気がするので,
本記事で紹介する工夫(wslgit.exeの導入)がいらないかもしれない.
参考:https://qiita.com/nj_ryoo0/items/a42c47436b77310f5430
Remote WSL
は
- Linux版VSCodeをWSLで起動
- Win版VSCodeを単なるインターフェースとして使う
というイメージ.
(WSLでVSCサーバを立ち上げてWinVSCodeがクライアントとなってやり取りする)
またRemote WSLとか使うなら,X何某サーバ入れとくとGUIも作れる.
参考:お前らのWSLはそれじゃダメだ
Windows Terminalもおすすめ
ただし,普通にWindows側の環境を使用して開発する場合依然下記は有用.
またPlatformIOとかのVSCode Extentionの中にRemote WSL
に対応してないっぽいものが存在していたりするので,
そういうのを見つけたらIssueを立てたりしよう
ABSTRACT
VSCode,WSL,Gitの導入についてほかの方の記事をまとめてかつ自分が追加でやったことがあればそれも一応追記していく.
他に見つけた似たコンセプトの記事:
- Windows10でWSLとVSCodeを使ってC++プログラミング環境を整える
- Visual Studio CodeでWSLのgitを利用してソース管理を行う
- Visual Studio Code の統合ターミナルと Git を Windows Subsystem for Linux のものに指定する
BACKGROUND
PCが不調でDiskpartでチョメチョメしてたら間違ってディスクごと吹っ飛ばしたので新規一転Windows10をクリーンインストール.
この機に何となく触ってみたいなあ程度に思っていたものを触っていく.
INSTRATIONs
##VSCode
VSCodeは普通にWin10向けのをダウンロード
##WSL
Win Storeからインストール.Ubuntu18.xにした.
「プログラムと機能」からWSLを使えるようにいじる箇所があるので注意
参考:Windows 10でLinuxプログラムを利用可能にするWSLをインストールする(バージョン1803以降対応版)
シェルはデフォはBash.
大学でSolaris使ってた時はtcsh使ってたからtcshを入れようかと思ったけど普通にUbuntuでBashにも慣れてたからBashのまま
X何某システム入れるといろいろ気持ちよくなれるらしい.
参考:お前らのWSLはそれじゃダメだ
Windows Shellがインストールできる人についてはそれを使えばいいと思う.
X何某システムを入れればGUIを起動できるけど,ぼちぼちWSL2でその辺勝手にやってくれそう感はある.
https://www.atmarkit.co.jp/ait/articles/2010/02/news093.html
$HOME
上に.bash_profile
がなかったので
> cp .profile .bash_profile
としてから**vim
**で.bash_profile
をいじって環境変数なりを設定した.
Windowsのディレクトリは/mnt/c
とか/mnt/d
とかでそれぞれCドライブやDドライブにアクセスできるので,
これ以下に作業ディレクトリを作ってVSCode(WIN app)で触れるようにしたい.
bashrcとかとの違いは他記事参照: 気が向いたらリンクを追記する.
https://blog1.mammb.com/entry/2019/12/01/090000
https://qiita.com/magicant/items/d3bb7ea1192e63fba850
https://techracho.bpsinc.jp/hachi8833/2019_06_06/66396
https://qiita.com/incep/items/7e5760de0c2c748296aa
##Git
WSL(Ubuntu)のbashから
参考:Microsoftストアの Ubuntu 18.04 に Git環境を構築する(旧題:Bash on Ubuntu on Windows にGit環境を構築する)
Gitはインストール後,最初に初期設定
> git config --global user.name <ユーザー名>
> git config --global user.email <メールアドレス>
gitの超簡単な使い方:git - 簡単ガイド 猫でもわかるGit 最初の一歩
Git初めて使う人はインストールしたなら上の記事みたいにとりあえずやってみればいいと思う.
これやってから他の便利なオプションとかも覚えればいいと思う.
SETTINGs
WindowsのVSCodeの機能としてWSLのGitをたたくには.exeとしてWindowsから参照できる実行ファイルが欲しいらしい.
VSCodeのコンソールにWSLのシェル各位を割り当ててそこからGitをたたく分には何の工夫もいらないはずだが,GUIとかショートカットとかでポチッと一発でカマスとか,VSCodeのSetting.jsonとかどこにあるかよくわかんないやつとかもVSCodeの機能でGitの対象にできるので次の工夫をしておいたほうがいいっぽい?
特に試行錯誤しておらず他の人のを参考にしているまでなので,確かなことはよくわかっておらず,推測の部分が多分に含まれていることは否めません.
##WSLGIT
このwslgitというのがexeとしてVSCodeに見てもらえることができて,かつWSL内のgitをたたいてくれる媒介コマンドになるものという認識です.(なのでたぶんWSLでgitをインストールしておかないとたぶんだめ.てかそうじゃないと頭のWSLってなによって感じ)
追記:後なんかWinのディレクトリパスをLinuxのディレクトリパス形式にしてくれたりとかもしてくれてるみたいなので,自分でバッチ組んでて何気にぶち当たる面倒くさいことがいろいろ解決してくれてるっぽい.結構ISSUEにも積極的に対応してくれてるみたい.
まずandy-5/wslgitこちらからwslgit.exeをダウンロード,いい感じのところに保存する.
いい感じのところとは......
- VSCodeが保存されるようなところ
%LocalAppData\Programs
とか - C直下......ではなく
c:\opt
ディレクトリをつくるなどしてそこに入れる(参考:C:\ の直下にはインストールしない方がいいと思う)
などがおススメです.とりあえずC直下に入れるのには私は抵抗あります.セキュリティとかはよくわからないけどC直下のエントロピーは小さくしておきたい.
##VSCode
下記記事を参考にVSCodeからWSLのBashをいつも使うコンソールにする.VSCodeのSettingsについて一般的にも参考になると思う.
Setting.jsonをひらくのは微妙にことなっていて,「三点をクリック」的な旨があると思うけど,
2018年12月20日時点で最新のVSCodeでは三点アイコンの左の左の{}
←こんなボタンでSetting.jsonを開ける.
2020年11月23日時点で最新のVSCodeではfile
->preference
->settings
(ここまではCtrl
+,
でもいける)を開いた状態で
3点…
アイコンの左の左の紙マーク📄みたいなやつで開ける.
Windows10でWSLとVSCodeを使ってC++プログラミング環境を整える
直にbash(c:/windows/system32/bash.exe
)を開くと最初のワーキングディレクトリが/mnt/c/windows/system32/
になるから
コンソールとして%LocalAppData\Microsoft\WindowsApps\ubuntu.exe
を指定すれば~
にいける.最初にBash開いてもcd ~
で同じことだと思う.
下記記事ではc:/windows/system32/bash.exe
をコンソールとして指定して,オプションで~
に行くようにしている.
Visual Studio Code の統合ターミナルと Git を Windows Subsystem for Linux のものに指定する
この方はc:/windows/system32/wsl.exe
を指定している.
VSCode + WSL
wslのコンソールはbash.exe,ubuntu.exe,wsl.exeから起動できるみたい.
多分ディストリビューションとかべつのシェルをインストールするといろいろ変わってくるんだと思う.
多分一番安全なのは下記記事のように%LocalAppData\Microsoft\WindowsApps\ubuntu.exe
っていう感じでディストリビューションをしていすること.
そのあと他記事を参照してオプションで好きなシェルを使えばいいと思う.
Visual Studio CodeでWSLのgitを利用してソース管理を行う
そんでもって上三つ(直前3つでもこのページ上部3つでも)で紹介した記事に従ってVSCodeのgitのSettingを変えてあげるとよい.