JavaのWebアプリケーション開発フレームワークによる、Webサイト開発の顛末記です。

EclipseのMavenを使った、Spring-MVC、Thymeleaf、MyBatis 等のプログラミングテクニックを、
備忘録的に記録しています。実際に動くソースコードを多用して説明していますので、
これからEclipseや、Spring-MVCを始めたいと思っている人にとって、少しでも参考になれば幸いです。
■あぜ道 Eclipseの小技
git共有リポジトリの複製
前回は、Gitリモートリポジトリを作成してファイルをリモートリポジトリにプッシュしましたが、
最大の目的は、このリモートリポジトリを他のプロジェクトメンバーに開放することにあります。
一人だけで使うにはもったいなさすぎます。
今回は、共有リポジトリを他のプロジェクトメンバーと共有するための
共有リポジトリからのプロジェクトのインポートに付いて説明していきます。
ここからは自分を、プロジェクトのメンバーB作君と思って話を聞いてください。
プロジェクトリーダーA先輩から、リポジトリ作成完了の報告を受けたB作君は
さっそく共有リポジトリから、プロジェクトのインポート作業に取り掛かります。
まず、Eclipseで新しいワークスペース
(ここでは仮に C:¥EclipseWorkSpace¥newWSとします)
を作成しました。
ワークスペースの新規作成

 

新しいEclipseワークスペースなので、中身はまだ空っぽです。
Eclipseのプロジェクトすら作成されていません。
新しいワークスペース

 

■Gitリポジトリからの複製
「Gitリポジトリー」ビューを表示して、ビューを開きます。
プロジェクトもないし、ローカルリポジトリもないので、初期値表示として
3つのリストが表示されています。
真ん中の「Gitリポジトリーの複製」のリンクをクリックします。
Gitリポジトリービュー

 

「Gitリポジトリーの複製」サブウィンドウが表示されます。
「URLの複製」を選択して、「次へ」ボタンをクリックします。
Gitリポジトリーの複製

 

「Gitリポジトリーの複製」ロケーション入力画面に切り替わるので、
前編で作成した、Git共有リポジトリパスを入力します。
ここは、前回の「宛先Gitリポジトリー」の設定と全く同じで
URL/パスワードを入力し、「セキュアに保管」のチェックボックスをチェックして
「次へ」ボタンをクリックします。
ソースGitリポジトリ

 

「Gitリポジトリーの複製」ブランチ選択画面に切り替わるので、
一覧に表示されている「master」のチェックボックスをチェックして
「次へ」ボタンをクリックします。
ブランチ選択

 

「Gitリポジトリーの複製」ローカル宛先画面に切り替わるので、
共有リポジトリからローカルに保管する作業ディレクトリを指定して
「完了」ボタンをクリックします。
ここでは、作業ディレクトリを「C:¥ProjectClone¥jLabo」としてあります。
ローカル宛先

 

「Gitリポジトリ」ビューに戻ります。
先ほどまでは何も表示されていなかったビューに、共有リポジトリの複製内容が表示されています。
ただし、この時点で共有リポジトリに接続はできていますが
Eclipse上にはファイルはまだインポートされていません。
Git共有リポジトリ接続

 

■Gitリポジトリからのインポート
共有リポジトリから、ファイルのインポートを行います。
「Gitリポジトリ」ビューのプロジェクト名を選択し、マウスの右ボタンをクリックします。
メニューが表示されるので、「プロジェクトのインポート」を選択します。
プロジェクトのインポート

 

「プロジェクトをインポート」のサブウィンドウが開きます。
一番上の「既存のEclipseプロジェクトをインポート」(英語表記ですが、日本語に訳するとこうなります)
のラジオボタンをチェックして、「次へ」ボタンをクリックします。
既存のEclipseプロジェクトをインポート

 

「プロジェクトをインポート」のサブウィンドウにプロジェクトの一覧が表示されるので、
インポートするプロジェクトのチェックボックスをチェックして、
「完了」ボタンをクリックします。
プロジェクトをインポート

 

ファイルのダウンロードが始まり、しばらくすると
Eclipseのナビゲータビューにインポートされたプロジェクトが表示されます。
ただ前回、共有リポジトリにファイルをプッシュした際、
ディレクトリを空のままプッシュしてしまったので、
共有リポジトリ上では、空のディレクトリは扱ってくれないので
インポートする際には、空のディレクトリはインポートされず、
問題ビューで問題が発生する場合があります。
この例ですと、src/main/resourcesと、src/test/resoures というディレクトリが無いぜよ!
と、Eclipseが怒っているので、手動で作成してあげます。
プロジェクトインポート結果

 

最終的に、共有リポジトリからインポートして、ディレクトリを調整した結果、
問題ビューの問題も消えて、共有リポジトリからのプロジェクトのインポートが完了です。
プロジェクトインポート完了

B作君は大喜びですが、これからA先輩に鬼のようにこき使われるとも知らず、
波乱の船出となりそうです。    南無。

さて、共有リポジトリという翼を手に入れて、自由に空を飛べるようになった反面、
gitローカルリポジトリの作成編の最後の方でも 書きましたが、
ファイルの競合問題等に注意を払う必要があります。
基本的には、ファイルの編集を始める前にまず共有リポジトリからプルを実施して常にローカルを最新に保つこと。
編集するファイルが他人と重複しないよう作業分担をきちんと決めておくこと。
編集したファイルは小まめに共有リポジトリにプッシュして、共有リポジトリを最新化することなどを心がけましょう。
でも、そこはやはり不完全な人間のやること。どんなに注意しても競合が発生することを完全にはなくせません。
そんな場合は、競合の解消を行う必要がありますが、
ここで私が説明するより、詳しく説明しているサイトがありますので、こちらで調べてください。
gitローカルリポジトリの作成編でもご紹介した
「サル先生」の
サルでもわかるGit入門 〜バージョン管理を使いこなそう〜
「プルリクエスト編」をご覧ください。