Gitブランチをプッシュする。EclipseでGitを使う(10)
はじめに
EclipseでGitを使う方法を説明していくシリーズの第10回。前回作成したブランチをプッシュし、リモートリポジトリを介し、メンバ同士で複数のブランチを共有する場合を考えていきます。
これまでのGit連載記事
1.ブランチをプッシュする
前回の状態を流用し、サブブランチを作成した状態にします。以下のようにsub1とsub2ができている状態です。この通りでなくて構いませんので、いくつかサブブランチがある状態にしておきましょう。
それではプッシュを行いましょう。ローカルの「master」に「✔」が付いている状態で、いつもと同じようにプッシュを行います。
2.別のローカルPCでフェッチする
それでは、別のローカル端末でフェッチしてみましょう。
今回は同一PCで「SourceTree」というGUIでGitが扱えるツールを使用しています。
「SourceTree」に関する話はまた別の機会に。。
フェッチした結果を見てみると、masterブランチのコミット結果が共有されていることが分かります。
しかし、「sub1」「sub2」ブランチはフェッチできていません。これは、そもそも「sub1」「sub2」をプッシュできていないからにほかなりません。複数ブランチが存在する状態で、Eclipseの「Java」パースペクティブから「プロジェクトを右クリック⇒チーム⇒プッシュ」という手順でプッシュを行う場合には、「Gitリポジトリ-エクスプローラ」パースペクティブで、どのブランチがチェックアウトされているかを確認しておく必要があるということです。
「Gitリポジトリ-エクスプローラ」からプッシュすることも可能です。その場合は、ローカルリポジトリのプッシュしたいブランチを右クリックし、「ブランチへプッシュ」をクリックすればOKです。
では、その方法で「sub1」ブランチをプッシュしましょう。
その後、再びフェッチを行います。すると「sub1」がフェッチできたことが分かります。
このリモートリポジトリの「sub1」ブランチをローカルリポジトリへチェックアウトしてあげれば、別のメンバが作ったブランチを編集することが可能になるわけです。
3.ブランチをフェッチする(Eclipseで)
フェッチ側の作業は「SourceTree」を使ってしまったので、一応Eclipse側でのフェッチ作業を確認しておきましょう。「SourceTee」でブランチ「sub3」を作成し、プッシュまでを行っておきます。
プッシュが完了したら、次にEclipse側からフェッチを行いましょう。
4.チェックアウトする
リモートの「origin/sub3」をチェックアウトしましょう。SourceTreeのように右クリックして「チェックアウト」をクリックしてみます。
これだけではだめです。たしかに「✔」マークはリモートの「origin/sub3」につきましたが、ローカルにはできあがっていません。
「origin/sub3」を右クリックしたら今度は「ブランチの作成」をクリックしてみます。
このようなダイアログが表示されますので「OK」をクリックします。
すると以下のように、ローカルにもブランチが反映されました。
5.まとめ
今回はブランチをプッシュする方法について説明を行いました。Eclipseだけでは動きが理解しづらいため、SourceTreeというソフトを登場させましたが、こちらもなかなか使い易いソフトです。CUIでGitコマンドを使いながら動きをGUIで見られるという優れものですので、Gitコマンドを学習したい方にはおすすめです。