windowsでgitを使っている人は多いと思いますが、意外と知られてない活用されてない部分かもしれないのであえて記事にしてみました。
環境
- Windows 10 Home 64bit
- git for windows 2.20.1
Bashとは?
Linuxで使われてる、ちょー標準的なシェルです。今のmacなんかもそうですね。(いや、zshだっけ?まあ似たようなもん)
すごい雑にいうと、windowsのコマンドプロンプトみたいなもんで、Linux上のコマンドをこのシェル上で実行できます。
ちなみにlsやcdのような基本的コマンドはbash自体に含まれているコマンドです。
そしてlinuxにはfindやgrep等の便利なコマンドがありますが、git bashを入れるともれなくついてくるのでwindows上でこれが使えるようになります。
あと当然ですが、gitのコマンドももれなくついてきます。
インストール
特に難しい事はなく、DownloadからのNext連打で勧めます。
ポイントなのはAdjusting your PATH environment
のところで、
Use Git and optional Unix tools from the Command Prompt
を選択しておく事でしょうか。
これでgit bashだけでなくコマンドプロンプトでもls
などのコマンドが使えるようになります。
なお、Warningとして書いてありますが、もとからwindowsにあるコマンドはoverrideされるって書いてあります。上書きというもPATHが被ってbashの方のが優先される結果になるってだけですかね。C:\Program Files\Git\usr\bin
とかが%PATH%に追加されます。個人的にwindowsのfindは使ってないのでぜんぜんOKです。
あとはConfiguring the terminal emulation to use with Git Bash
のところはUse MinTTY
を選択しています。ここは好みなんですかね。こちらを選択しておくと、よりLinuxに近いターミナルを使えます。
まず普通にgit bash
こんな感じで、Linux感覚でwindowsが操作できます。
ちなみに/c
がWindowsでいうc:\
になる。
マイドキュメントだと/c/Users/name/My\ Documents
みたいな感じですね。
なおbashはC:\Program Files\Git\bin\bash.exe
が本体です。
次にcommand prompt
おもむろにコマンドプロントを立ち上げます。
いつものように普通に真っ黒なウインドウが立ち上がりますが、すでにbashへのPATHが通っており、ハイブリッドなcmdになっています。
先程と同じコマンドを実行してみました。
bashのコマンドを介するとUNIXのパスが使えるようになったりしてちょっとややこしいですね。find c:\Python27 -name '*.txt' -ls
といったwindows風でも使えます。
もちろんgitコマンドもcmd上で使える。
linuxになれてる人はついlinuxのコマンド使いたくなるシーンが多いので、けっこう便利になるかなと思います。
tarで解凍したりだとか、vimつかったりだとか・・あと間違えてlsしたときに普通に返してくれるのがうれしい。
まあ、逆にますますCMDから離れていってしまうのが難点といえば難点ですが。