VSCodeでGit連携する方法|ソース管理パネルの使い方と初期設定
VS CodeでGit連携を始めるなら、最初に押さえるべき点はシンプルです。Git本体をPCに入れ、ユーザー名とメールアドレスを設定し、VS Codeの「ソース管理」パネルで変更確認、ステージ、コミット、同期の流れを覚える。これで日常的な更新作業の大半は進められます。
とくに、ターミナルでgit addやgit commitを毎回打つのが不安な人には、VS Codeのソース管理パネルがかなり有効です。変更ファイルの一覧、差分確認、ステージ、コミット、プッシュまでを画面上で追えるので、「今どこまで反映したか」が見失いにくくなります。
- できること: 変更確認、差分比較、ステージ、コミット、ブランチ切り替え、Push/Pull/Sync
- 向いている場面: Gitをこれから使う人、CLI操作にまだ慣れていない人、ファイル差分を視覚的に見ながら作業したい人
- 前提環境: 2026年4月21日時点のVS Code公式ドキュメントとGit公式情報をもとに整理
- 注意点: VS Codeだけでは完結せず、PC側にGitのインストールが必要
ここがポイント: VS CodeのGit機能は便利ですが、内部ではPCに入っているGitを使っています。まずはGit本体の導入と初期設定が先です。
まず必要な初期設定
ここを飛ばすと、ソース管理パネルが出ない、コミットできない、履歴に名前が乗らない、といった初歩的なつまずきが出やすくなります。
1. Gitをインストールする
VS Code公式ドキュメントでは、Git機能を使う前提としてGit 2.0.0以降のインストールを案内しています。VS Codeは独自のGitを持っているわけではなく、マシン上のGitを利用します。
- WindowsやmacOS、LinuxにGitを入れる
- VS Codeは最新版を使う
- 既にGit導入済みでも、古すぎる場合は更新を確認する
Gitの配布ページはgit-scm.com、VS Code本体は公式ダウンロードページから確認できます。
2. Gitのユーザー名とメールアドレスを設定する
コミット時には、誰が変更したかをGitが記録します。未設定のままだと、コミット時に警告や失敗の原因になります。
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
実務ではこの2つが最低限です。会社アカウントと個人アカウントを分ける運用をしているなら、グローバル設定ではなくリポジトリごとに設定することもあります。
3. VS Codeでフォルダを開く
Git連携は「ファイル単体」ではなく、プロジェクトフォルダ単位で使うのが基本です。VS Codeで対象フォルダを開くと、そのフォルダがGitリポジトリなら自動検出されます。
新規フォルダなら、ソース管理パネルから「リポジトリを初期化」して開始できます。
ソース管理パネルで何ができるか
ここを理解すると、VS Code上でのGit操作がかなり楽になります。
変更ファイルを一覧で確認する
ソース管理パネルは、Git作業の中心です。Ctrl+Shift+G(Windows/Linux)または画面左のソース管理アイコンから開けます。
主に見るのは次の表示です。
U: 未追跡ファイルM: 変更済みファイルD: 削除されたファイルChanges: まだステージしていない変更Staged Changes: コミット対象として確定した変更
この一覧があるおかげで、「どのファイルを触ったか」「コミット対象に何が入るか」を作業前に確認しやすくなります。
差分を開いて中身を確認する
ファイル名をクリックすると、差分エディタで変更箇所を見比べられます。行単位で何を追加し、何を削ったかを視覚的に追えるので、誤コミットの防止に直結します。
長いファイルを触ったときほど、この確認が重要です。見た目では少しの修正でも、空白や改行、意図しない削除が入っていることがあります。
ステージしてコミットを分ける
Gitは「変更しただけ」では保存されません。まずステージし、その後コミットします。
基本の流れは次の通りです。
Changesで対象ファイルを確認する+ボタンで必要なファイルだけステージする- メッセージ欄にコミットメッセージを書く
Commitを実行する
この2段階を使うと、たとえば次のように変更を分けられます。
- レイアウト修正だけ先にコミットする
- 文言修正は別コミットにする
- バグ修正とリファクタリングを分離する
レビューしやすい履歴を残せるのが、ステージをきちんと使う最大の利点です。
初心者向けの基本手順
ここでは、VS Codeの画面操作だけで一連の流れを追います。
新しいプロジェクトをGit管理にする場合
- VS Codeで作業フォルダを開く
- ソース管理パネルを開く
Initialize Repositoryを選ぶ- ファイルを追加して保存する
Changesに出たファイルをステージする- コミットメッセージを書いてコミットする
これでローカルGit管理が始まります。
既存のリポジトリを使う場合
- ソース管理パネルで
Clone Repositoryを選ぶ - リポジトリURLを入力する
- 保存先フォルダを選ぶ
- クローン後に開く
既存リポジトリを開いた場合、VS Codeは自動でGitリポジトリとして認識します。
リモートに反映する場合
ローカルコミットだけでは、GitHubやGitLabなどにはまだ反映されません。リモートと接続してPushまたはSync Changesを使います。
VS Codeの公式説明では、同期まわりの基本は次の整理です。
Fetch: リモートの更新を取得するが、作業中ファイルには反映しないPull: リモートの更新を取り込み、現在のブランチへ反映するPush: ローカルコミットをリモートへ送るSync: PullとPushをまとめて実行する
「いま自分に未反映の変更があるか」「自分のコミットをまだ送っていないか」は、ステータスバーの↑と↓表示でも確認できます。
実務でよく使う操作
毎日使うのは、派手な機能よりこのあたりです。
ブランチを切り替える
VS Codeでは、画面下のステータスバーに現在ブランチ名が表示されます。ここをクリックすると、ブランチ切り替えや新規作成ができます。
向いている使い方は次の通りです。
mainは直接触らず、作業ブランチを切る- 修正ごとにブランチを分ける
- レビュー前に差分を見直す
CLIでgit checkoutやgit switchを覚えていなくても、画面操作で進めやすいのが利点です。
直前のコミットを修正する
コミットメッセージを書き間違えた、ファイルを入れ忘れた、という場面は珍しくありません。VS CodeではGit: Commit Staged (Amend)やUndo Last Commitなどの操作が用意されています。
ただし、すでに共有済みのコミットを安易に書き換えないことは重要です。チーム開発では履歴の扱いを事前にそろえておく必要があります。
マージ競合を解消する
競合が起きると、VS Codeはソース管理パネルで該当ファイルを目立つ形で示します。エディタ上でも競合箇所を確認しながら解消できます。
競合解消で大事なのは、単にエラーを消すことではありません。
- どちらの変更を残すか
- 両方必要ならどう統合するか
- テストや表示確認が必要か
この判断まで含めて進める必要があります。
おすすめの初期設定
初期状態でも使えますが、数個だけ見ておくと扱いやすくなります。
git.autofetch
自動フェッチの設定です。VS Code公式FAQでは、不要ならfalseにできると案内されています。頻繁にリモート状況を取り込みたいなら有効、通信や通知を減らしたいなら無効寄りで考えると分かりやすいです。
- 小規模な個人開発: 無効でも困りにくい
- チーム開発: 有効のほうがリモート差分に早く気づきやすい
git.confirmSync
同期前に確認を出す設定です。誤ってPushしたくない人には相性が良い設定です。
scm.alwaysShowRepositories
複数リポジトリを扱うワークスペースで便利です。モノレポや関連リポジトリを同時に開くとき、どの変更がどのリポジトリかを見分けやすくなります。
よくある失敗と対処
初心者が詰まりやすい箇所は、だいたい決まっています。
ソース管理パネルが反応しない
考えやすい原因は次の通りです。
- Gitが未インストール
- フォルダではなく単一ファイルだけ開いている
- そのフォルダがGitリポジトリではない
- Gitの実行パス認識に失敗している
まずはGit導入と、対象フォルダを開いているかを確認してください。
コミットできない
多い原因はこの2つです。
user.nameとuser.emailが未設定- ステージしていないのに、ステージ必須の運用で進めようとしている
VS Codeには「すべてまとめてコミット」系の操作もありますが、最初のうちはステージしてからコミットの流れで覚えたほうが混乱しにくいです。
リポジトリが unsafe と警告される
VS Code公式FAQでは、Git 2.35.2以降で、現在ユーザー以外が所有するフォルダ内のリポジトリは安全でない可能性があるとして警告される場合があると説明しています。
たとえば、共有フォルダや所有者が異なる環境で起きやすい問題です。VS CodeからManage Unsafe Repositoriesを開き、安全なリポジトリとして扱うか確認します。
何をPushすべきか分からなくなる
そのときは、いきなり同期せず、順番を分けると整理しやすくなります。
- 差分を見る
- ステージ対象を絞る
- コミットする
Fetchしてリモート状況を確認する- 必要なら
Pull - 最後に
Push
この順に戻すと、原因を切り分けやすくなります。
ターミナル操作とどちらを使うべきか
結論として、普段はソース管理パネル、細かい制御やトラブル時はターミナルという使い分けが実務では現実的です。
VS CodeのUIが向いているのは次の場面です。
- 変更ファイルを一覧で把握したい
- 差分を見ながらコミットしたい
- Git初心者が操作ミスを減らしたい
- ブランチ切り替えや同期を視覚的に進めたい
一方、ターミナルが向いているのは次の場面です。
- 複雑な
rebaseや履歴整理 - 複数オプション付きの細かいGit操作
- エラー原因をコマンド出力で詳しく追いたい
- スクリプトや自動化に組み込みたい
最初から全部CLIに寄せる必要はありません。VS Codeの画面で流れを掴み、必要なところだけコマンドに降りるほうが定着しやすいです。
まずここまでできれば十分
最初の目標は、次の5点です。
- Gitをインストールする
user.nameとuser.emailを設定する- ソース管理パネルで差分を見る
- ステージしてコミットする
PushまたはSyncでリモートに反映する
この5つができれば、日々の更新作業はかなり安定します。次に見るべきなのは、ブランチ運用と競合解消、それからFetchとPullの違いを混同しないことです。ここを曖昧にしたまま進めると、チーム開発で履歴を壊しやすくなります。
参照リンク
- VS Code公式: Source Control in VS Code
- VS Code公式: Quickstart: use source control in VS Code
- VS Code公式: Staging and committing changes
- VS Code公式: Working with repositories and remotes
- VS Code公式: Git Branches and Worktrees in VS Code
- VS Code公式: Source Control FAQ
- VS Code公式: Troubleshooting source control
- VS Code公式: Download Visual Studio Code
- Git公式: Downloads
- Git公式: git documentation
