はじめに
「Git Bash(ギットバッシュ)」は、WindowsでGitを使うためのコマンド操作用ツールです。
Gitをインストールすると一緒に導入され、黒いターミナル画面からさまざまなGitコマンドを実行できます。
ただのコマンド画面ではなく、Linuxのようなコマンド体系を持つのが大きな特徴です。
この記事では、初心者でも迷わないように、仕組みから使い方、PowerShellとの違い、注意点までをやさしく紹介します。

🧠 Git Bashとは
概要
Git Bash は「Git for Windows」に同梱されているターミナルソフト(コマンド実行環境)です。
「Bash(バッシュ)」というUNIX系のシェルをWindowsでも使えるようにしたもので、Git コマンドだけでなく、ls
や cd
などの Linux風コマンド も使えます。
名前の意味
- Git:バージョン管理ツール
- Bash(Bourne Again SHell):LinuxやmacOSで標準的に使われるシェル
つまり「GitをLinux風のコマンドで操作できるツール」が Git Bash です。
⚙️ 仕組み(どんな環境で動いている?)
Git Bash は、内部で MSYS2 という軽量UNIX互換レイヤーを使っています。
このMSYS2は、さらに Cygwin の技術をもとに作られています。
簡単にいうと、Git Bash は、WindowsでLinuxのような動作をエミュレートしている仕組みです。
図解イメージ
+-------------------------------+
| ユーザーが操作するGit Bash |
| (Linux風のbashシェル) |
+-------------------------------+
│
▼
+-------------------------------+
| MSYS2 (軽量UNIX互換レイヤー) |
| → Cygwin由来の仕組み |
+-------------------------------+
│
▼
+-------------------------------+
| Windows OS |
| (Win32 API / NT Kernel) |
+-------------------------------+

Git Bash: (MSYS2を同梱したGit for Windowsの実行環境)
🖥️ Git Bashのインストール方法
- Git公式サイト から「Git for Windows」をダウンロード
- インストーラを起動し、案内に従って進める
- 途中で「Use Git from Git Bash only」を選べばOK
- インストール完了後、「Git Bash Here」を右クリックメニューから起動できます。
💡 基本的な使い方
ターミナルの起動方法
- エクスプローラーで右クリック → 「Git Bash Here」
- またはスタートメニューから「Git Bash」を検索
開くと黒い画面(Bashターミナル)が表示されます。
🧾 よく使う基本コマンド(PowerShellとの比較付き)
Git Bash では Linux 互換のコマンド体系を採用しており、PowerShellとはコマンド構文が異なります。
下の表で比較して覚えるとスムーズです👇
操作内容 | Git Bash(Linux系) | PowerShell(Windows系) | 説明 |
---|---|---|---|
現在のフォルダを表示 | pwd | Get-Location または pwd | PowerShellでもpwd はエイリアスとして使える |
ファイル一覧を表示 | ls | ls または Get-ChildItem | 出力形式が少し異なる(PowerShellは表形式) |
フォルダを移動 | cd ディレクトリ名 | cd ディレクトリ名 | 同じ構文で利用可能 |
1つ上の階層へ移動 | cd .. | cd .. | 同じ構文で利用可能 |
新しいフォルダを作る | mkdir test | mkdir test または New-Item -ItemType Directory test | 基本的に共通 |
空のファイルを作る | touch index.html | New-Item index.html | PowerShellにはtouch がない |
ファイルを削除 | rm index.html | Remove-Item index.html | PowerShellではdel やri も可 |
ファイルをコピー | cp a.txt b.txt | Copy-Item a.txt b.txt | 同等の動作だがコマンド名が異なる |
ファイルを移動 | mv a.txt ../ | Move-Item a.txt ../ | 同等の動作だがPowerShellは詳細出力あり |
ファイル内容を表示 | cat test.txt | Get-Content test.txt | PowerShellでもcat はエイリアス |
現在のGitリポジトリ状態 | git status | git status | Gitコマンドはどちらでも同じ |
Gitリポジトリを作成 | git init | git init | どちらも同様に動作 |
Gitコミット履歴を表示 | git log | git log | 同様に動作 |
💬 コツ
- 共通して使えるコマンドも多い(
cd
,mkdir
,ls
など) - ただし、PowerShellは「Windowsオブジェクト」を扱うため、出力が表形式になったり、コマンドが動詞+名詞(例:Get-Item)になるのが特徴です。
- Linux学習やGit操作に慣れる目的なら、Git Bash を使うのが自然です。
Windowsシステム管理寄りの操作をするなら PowerShell が向いています。
⚠️ Git Bashを使う場合の注意点
Git Bashは便利な反面、Windows独自の仕様との違いを理解しておかないと混乱することがあります。
以下のポイントに注意しましょう。
🔸 パス(フォルダの書き方)が異なる
- Windowsでは:
C:\Users\username\Desktop
- Git Bashでは:
/c/Users/username/Desktop
👉 スラッシュ(/)を使う点と、ドライブレター(C:など)が小文字+スラッシュ付きで始まる点が特徴です。
🔸 ファイルの改行コードが違う
- Windowsは:
CRLF
- Linuxは:
LF
Gitは自動で変換する設定(core.autocrlf
)を持っていますが、
誤設定だと改行が崩れてしまうことがあります。
対策:
git config --global core.autocrlf true
これでWindowsでの改行問題を自動処理してくれます。
🔸 ネットワーク接続やポート通信が制限されることがある
Git Bashは内部でMSYS2を利用しているため、ローカルサーバーの起動やポート待受(例:localhost:3000)がうまく動かないケースがあります。
👉 その場合は PowerShell や Windows Terminal でコマンドを実行すると安定します。
🔸 環境変数やPATHの扱いが異なる
Git Bashでは、export
コマンドで環境変数を設定しますが、Windows全体の環境変数とは別に扱われます。
例:
export OPENAI_API_KEY="sk-xxxx"
PowerShellでは同じ変数を読めないこともあります。
→ 同じ変数を両方のシェルで使う場合は、Windows環境変数に登録しましょう。
🔸 権限の扱いが異なる
Git Bashは管理者権限を使わず動作します。
そのため、システムフォルダ(例:C:\Program Files
)に直接ファイルを作ると「Permission denied」となることがあります。
👉 対策:通常は ユーザー領域(例:C:\Users\あなたの名前
) で作業しましょう。
🧩 Git Bashを使うメリット
- Linux/Macと同じコマンド体系で学べる
- Git操作がわかりやすく、教材と同じ手順で練習できる
- 軽量でセットアップが簡単
- PowerShellやCMDよりGitとの親和性が高い
🚀 まとめ
ポイント | 内容 |
---|---|
Git Bashとは | Git for Windows に同梱されたLinux風ターミナル |
動作の仕組み | MSYS2 → Cygwin → Windows の互換レイヤー構造 |
メリット | Git学習に最適・軽量・クロスプラットフォーム対応 |
注意点 | パス・改行コード・環境変数・ポート通信などに注意 |
PowerShellとの違い | コマンド構文と出力形式が異なる(Linux的 vs Windows的) |