信頼度ランク
| S | 公式ソース確認済み |
| A | 成功実績多数・失敗例少数 |
| B | 賛否両論 |
| C | 動作未確認・セキュリティリスク高 |
| Z | 個人所感 |
EclipseでGitを使う — EGitプラグインの操作ガイド
EclipseのEGitプラグインを使ったコミット、ブランチ操作、マージ、コンフリクト解決方法を解説します。
一言結論
EclipseのEGitはGit Stagingビューでステージ・コミット・プッシュを一画面で完結できるが、コンフリクト解決はMerge Toolを使うと差分を視覚的に確認しながら安全に解決できる。
EGit について
EGit は Eclipse に標準バンドルされている Git プラグインです。Help > About > Installation Details で EGit が確認できます。
リポジトリの作成またはクローン
新規リポジトリ
プロジェクト右クリック → Team > Share Project > Git > Create
クローン
File > Import > Git > Projects from Git > Clone URI
URL に Git リポジトリの URL を貼り付けてウィザードを進めます。
基本操作
ファイルをステージ・コミット
- 変更したファイルを右クリック →
Team > Add to Index(または Git Staging ビューにドラッグ) Window > Show View > Other > Git > Git Stagingでステージングビューを開く- コミットメッセージを入力 →
CommitまたはCommit and Push
Git Staging ビュー
┌─────────────────────────────────────┐
│ Unstaged Changes Staged Changes │
│ ───────────────── ────────────── │
│ src/Foo.java → src/Bar.java │
│ src/Baz.java │
├─────────────────────────────────────┤
│ Commit Message: │
│ ┌─────────────────────────────┐ │
│ │ feat: add user login │ │
│ └─────────────────────────────┘ │
│ [Commit] [Commit and Push] │
└─────────────────────────────────────┘
Unstaged の「++」アイコンをクリックで全ファイルをステージできます。
ブランチ操作
ブランチ作成と切り替え
画面右下のブランチ名を右クリック(または Team > Switch To > New Branch):
- 新しいブランチ名を入力
Configure upstream for push and pullにチェックFinish
ブランチ一覧と切り替え
Team > Switch To でブランチ一覧が表示されます。
プッシュとプル
プロジェクト右クリック
→ Team > Push to Origin(プッシュ)
→ Team > Pull(プル)
Pull は fetch + merge を自動で行います。
Git History ビュー
Window > Show View > Other > Git > Git Reflog または
プロジェクト右クリック → Team > Show in History
コミット履歴が視覚的に確認できます。コミットをダブルクリックすると差分が見えます。
コンフリクトの解決
マージで競合が発生した場合、Eclipse のマージエディタが起動します。
<<<<<<< HEAD
System.out.println("変更A");
=======
System.out.println("変更B");
>>>>>>> feature/branch
Eclipse のマージエディタ:
- 競合ファイルを右クリック →
Team > Merge Tool - 左ペイン: 現在のブランチ、右ペイン: マージ先のブランチ
- 取り込みたい変更を選択して中央のペインに反映
- 保存後、ファイルを右クリック →
Team > Add to Index - コミット
よくある問題
”No HEAD yet” エラー
新規リポジトリで一度もコミットしていない状態です。最初のコミットを作成してください。
Push が拒否される
! [rejected] main -> main (non-fast-forward)
ローカルより先にリモートが進んでいます。まず Pull して最新を取り込んでからPushします。
.gitignore の設定
プロジェクト右クリック → Team > Ignore で個別ファイルをignore追加できます。
Eclipse プロジェクト用の .gitignore 推奨設定:
# Eclipse プロジェクトファイル
.classpath
.project
.settings/
# ビルド成果物
target/
bin/
*.class
# OS固有
.DS_Store
Thumbs.db
Git リポジトリビュー
Window > Show View > Other > Git > Git Repositories でリポジトリ全体を管理できます。
ここからリモートの追加、タグの操作、スタッシュの管理なども行えます。
コマンドラインとの使い分け
Eclipse EGit は日常的な操作(コミット、プッシュ、マージ)には便利ですが、複雑な操作(rebase、cherry-pick、reflog 操作)はコマンドラインの方が確実です。
Eclipse のターミナルビューでコマンドラインを使うのがベストバランスです:
Window > Show View > Terminal