3.

NetBeansでGitを導入する手順|Clone・Commit・Push・SSH鍵設定

編集
この記事の要点
  • NetBeans (8.x / Apache NetBeans) はGit プラグインが標準同梱。多くの場合追加導入不要
  • 無効化されているときは Tools → Plugins → Installed から Git を有効化。古い版では Available Plugins から追加
  • リポジトリ操作: Team メニューから Clone / Init / Branch / Commit / Push / Pull / Fetch / Merge
  • 差分はDiff、競合解決はResolve Conflicts、ローカル履歴はLocal History
  • SSH 鍵は OS の ~/.ssh/id_ed25519 を NetBeans が自動利用。Windows は %USERPROFILE%\.ssh
  • .gitignorenbproject/private/, build/, dist/ を必ず除外

NetBeans の Git 連携

NetBeans は Oracle 時代から Git クライアントを標準同梱しており、Apache NetBeans (12+) でも Apache Git Support として最初から有効化されています。JGit (Pure-Java の Git 実装) ベースのため、コマンドラインの git がインストールされていなくても動作します。

プラグイン状態の確認 / 有効化

すでに有効ならそのまま使えます。グレーアウト・無効化されている場合は以下の手順で有効化します。

  1. メニュー: Tools → Plugins
  2. Installed タブを開く
  3. 名前列で 「Git」 を探す (Apache NetBeans 12+ では「Git」「Git Hooks」など複数)
  4. チェックボックスを ON にして Activate
  5. 古い 8.x で表示されない場合は Available Plugins タブから検索してインストール
  6. 必要であれば NetBeans 再起動

リポジトリの Clone (リモートから取得)

  1. メニュー: Team → Git → Clone...
  2. Repository URL: 例 git@github.com:user/project.git / https://github.com/user/project.git
  3. User / Password (HTTPS の場合)、または SSH 鍵
  4. Parent Directory: 取得先の親フォルダ (例 ~/NetBeansProjects/)
  5. Clone Name: ローカルフォルダ名
  6. Next → 取り込むブランチを選択 → Finish
  7. 取り込み後、「プロジェクトを開きますか?」と聞かれるので Yes

既存プロジェクトに Git を導入 (init)

  1. プロジェクトを開いた状態で Team → Git → Initialize Repository...
  2. リポジトリのルートディレクトリを確認
  3. OK.git/ ディレクトリが作成される
  4. 続けて Team → AddTeam → Commit で初回コミット

日常操作: Commit / Push / Pull

操作メニューショートカット (例)
変更を見るTeam → Show Changes
差分を見るTeam → Diff
ステージング不要(NetBeans Git は暗黙の Index。コミット画面でチェック ON のファイルだけ commit)
コミットTeam → Commit...Ctrl+K
プッシュTeam → Remote → Push to Upstream
プルTeam → Remote → Pull from Upstream
フェッチTeam → Remote → Fetch from Upstream
ブランチ作成Team → Branch/Tag → Create Branch...
ブランチ切替Team → Checkout → Checkout Revision...
マージTeam → Branch/Tag → Merge Revision...
競合解決Team → Resolve Conflicts

コミット画面の使い方

Team → Commit で開くダイアログ:

  • 上部: Commit Message 欄。1 行目に要約、空行、詳細の慣習を踏襲
  • 下部: 変更ファイル一覧。各行の左チェックボックスでこのコミットに含めるかどうかを選ぶ (= git add 相当)
  • ファイルを右クリックで Diff / Revert / Exclude が可能
  • Amend Previous Commit にチェックで直前のコミットを書き換え (push 後は厳禁)
  • Author / Committer も画面から指定可能

SSH 鍵の設定

NetBeans の JGit はOS の ~/.ssh/ を自動的に参照します。コマンドラインの ssh-keygen で鍵を作っておけば追加設定はほぼ不要です。

# 鍵生成 (Ed25519 を推奨)
ssh-keygen -t ed25519 -C "you@example.com"
# → ~/.ssh/id_ed25519 と id_ed25519.pub が出来る

# 公開鍵を GitHub / GitLab に登録
cat ~/.ssh/id_ed25519.pub
# → コピーして Web UI に貼り付け

# 疎通確認
ssh -T git@github.com
# Hi user! You've successfully authenticated, ...

Windows での鍵置き場は C:\Users\YOU\.ssh\。NetBeans は初回 push 時に「鍵のパスフレーズ」を聞いてくるので入力します。記憶させたい場合は pageant (PuTTY 系) または ssh-agent を OS 側で起動しておきます。

Diff / Local History の活用

  • Team → Diff: HEAD と作業ツリーの差分。ファイルをダブルクリックでサイドバイサイド表示
  • Right-click File → History → Show History: そのファイルのコミット履歴
  • Local History → Show Local History: git とは別に NetBeans が自動保存する変更履歴 (数分単位)。commit していなくても直前の編集まで戻せる「秘密兵器」
  • Annotate (Blame): 行ごとの最終編集者を表示

コンフリクト (競合) の解決

  1. Pull / Merge で衝突が起きると、ファイルアイコンが赤くなる
  2. 該当ファイルを右クリック → Resolve Conflicts...
  3. 3 ペイン (Local / Base / Remote) のマージビューが開く
  4. 各 hunk で「左採用」「右採用」「両方」「手動編集」をボタンで選ぶ
  5. 保存 → 右上の 「Accept」 で解決済みマーク
  6. すべて解決したら Team → Commit でマージコミット作成

.gitignore の推奨設定

NetBeans プロジェクトには個人 PC 固有のファイルが含まれるため、必ず除外します。

# .gitignore (Java / NetBeans 用テンプレート)

# NetBeans の個人設定
nbproject/private/

# ビルド成果物
build/
dist/
build.xml.bak

# Maven / Gradle
target/
.gradle/

# IDE 共通
.idea/
*.iml
.vscode/

# OS ゴミ
.DS_Store
Thumbs.db

# ログ・一時
*.log
*.tmp

NetBeans 8 と Apache NetBeans 12+ の違い

  • NetBeans 8 系 (Oracle): メニュー名は Team → Git → ... で同じだが Java 8 ベースで動作が遅い
  • Apache NetBeans 12+ (現行): JDK 17 推奨、Git プラグインが Apache 化されてリブランド
  • 新規導入なら Apache NetBeans 21+ を推奨

FAQ

Q: Push でいきなり「Authentication failed」
A: HTTPS の場合は GitHub のパスワード認証廃止 (2021) で、Personal Access Token (PAT) をパスワード欄に入れる必要があります。または SSH に切り替え (git@github.com:user/repo.git)。

Q: Pull すると毎回マージコミットができて履歴が汚い
A: NetBeans GUI には --rebase の直接オプションが薄いので、定期的にコマンドラインで git pull --rebase するか、git config pull.rebase true をリポジトリ単位で設定してください。

Q: コマンドライン git と NetBeans 内蔵 git を混ぜて使って大丈夫?
A: 大丈夫です。両方とも同じ .git/ を見ているので、リファレンスをF5 (Refresh) すれば NetBeans 側にも反映されます。

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. インストール方法(Windows)
  2. インストール方法(Linux)
  3. gitの導入
  4. 便利ショートカット一覧
  5. エラー一覧
  6. tomcatの起動

最近更新/作成されたページ