20130507
EGitはGitバージョン管理をするためのEclipseプラグインです。
- 前提条件
- EGitインストール済
- 中央リモートリポジトリにEclipseプロジェクトが登録済みであること
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」してチーム
→プロジェクトの共用
を選択
Git
を選択して「次へ」
プロジェクトの親フォルダー内のリポジトリを使用または作成
に「チェック」
プロジェクト
を選択して「リポジトリ―の作成」→「完了」
この操作で.git
ディレクトリが作られ、プロジェクトがGitバージョン管理化に置かれます。
git init
ウィンドウ
→ビューの表示
→Git
→Gitリポジトリ
を選択。
画面上部のGitリポジトリを複製し、このビューへ追加
アイコンを選択。
ロケーションのURI
にクローンするリポジトリのURLを入力して、「次へ」
ブランチの選択。master
を選択して「次へ」 (他に複製したいブランチがあれば選択してよい)
ローカルリポジトリのディレクトリ選択。適当なディレクトリを設定して「完了」
Gitリポジトリ
にビューにクローンされていることを確認してください。
なお、EGitの日本語版は Git clone のことを 複製 と表現しているみたいです。
git clone [URL]
Gitリポジトリー
ビューからクローンしたリポジトリの上で「右クリック」してプロジェクトのインポート
を選択。
既存プロジェクトのインポート
を選択して「次へ」
「完了」を選択。
パッケージエクスプローラー
などにEclipseプロジェクトとして追加されていることを確認してください。
ローカルリポジトリにfeatureブランチを作ってみます。
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」してチーム
→切り替え
→新規ブランチ
を選択
ブランチ名
に入力(たとえば feature/42 など)をして「完了」
プロジェクトの右側に表示されているブランチ名がmaster
からfeature/42
に切り替わっていることを確認してください。
git checkout -b feature/42
feature/42
ブランチで作業してファイルを変更したとしましょう。
変更したファイルをコミットする前にコンテンツをステージ(索引に追加)する必要があります。
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」してチーム
→ワークスペース同期化
を選択
ステージされていないファイルがチーム同期化
ビューに表示されます
ファイルを「右クリック」してGit索引へ追加
を選択
git add [filepath]
add
でステージしたファイルをコミットします。
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」してチーム
→ワークスペース同期化
を選択
コミットされていないファイルがチーム同期化
ビューに表示されますのでファイルを「右クリック」してコミット
を選択
コミットメッセージを入力して「コミット」
git commit -m 'message...'
feature/42ブランチにコミットした変更をmasterブランチにマージします。
まず、作業ブランチをmaster
に切り替えます。
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」チーム
→切り替え
→master
を選択
プロジェクトの右側に表示されているブランチ名がfeature/42
からmaster
に切り替わっていることを確認してください。
次にマージ操作を行います。
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」チーム
→マージ
を選択ローカル
からマージしたいブランチfeature/42
を選択して「マージ」
git checkout master
git merge feature/42
non-fast-forwardでマージできるかは調査中。
ローカルリポジトリにcommit
した変更をリモートリポジトリに反映します。
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」チーム
→アップストリームへプッシュ
を選択
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」チーム
→リモート
→プッシュ
を選択URI
にリモートリポジトリのURLを入力 (ホスト
、リポジトリーパス
は自動的に補完されます)認証
に情報を入力して「次へ」ソース参照
→master[ブランチ]
を選択して「Add Spec」→「完了」→「OK」
push
されるのは現在の作業ブランチになります。
feature/42
ブランチで作業していた場合
git push origin feature/42
master
ブランチで作業していた場合
git push origin master
作業が終わって不要になったローカルリポジトリのfeatureブランチを削除してみます。
パッケージエクスプローラー
などから、プロジェクトの上で「右クリック」チーム
→切り替え
→その他
を選択ローカル
から削除したいブランチを選択して「削除」
git branch -d [branch name]