当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。

テクてく Lotus 技術者 Slack に参加しよう!

2013年7月21日日曜日

GitHubを使ってのチーム開発 ~応用編~

今日は、チーム開発の続編です。
本当は昨晩書きたかったのですが、PCクラッシュという災難のために、止めたのでした(まったく、Windows 8め・・・)


本題に入る前に、こちらのクリックをお願いします。
にほんブログ村 IT技術ブログへ


なお、今回は、2013年7月のテクてくで紹介された内容の焼き直しです。
ですので、テクてくのハンズオンに参加された方は復習のつもりで見てください。
参加できなかった方は、是非この記事を読んで、試してみてください。

まずは、準備として、以前に当ブログで紹介した記事を参照願います。
ノーツアプリケーションのソース管理をしてみよう
Gitサーバからプロジェクトを取得しよう
Gitサーバに変更を反映しよう


では、始めましょう。
今回は、GitHubにリポジトリが登録されている状態からとなります。
以前に紹介した内容の場合、そのまま自分のローカルPCにダウンロードして、それを各自修正して、またGitHubサーバにPushするという流れでした。
これはこれで良いのですが、修正した内容を事前にチェックすることができません。
つまり、バグも誤って、マージされてしまうということになります。

そういったリスクを少しでも低くする方法として、GitHubには「フォーク」という機能が備わっています。

まずは、GitHubに登録されているプロジェクトページを開きます。(テクてくのハンズオンで使用したプロジェクトで説明します)
GitHub上のリポジトリ

リポジトリ名が左上に表示されています。ここで注目してほしいのは、「PUBLIC」となっている個所です。これは、他の人でも参照できるということを示しています。
ここで、右上にある「Fork」というリンクをクリックします。
※ちなみに右側に表示されている数字は、このリポジトリをフォークしたユーザの数です。

フォークに成功すると下図のような画面に変わります。
フォークして自分の専用リポジトリにした
左上に注目してください。黒塗りで隠しているのは、私のユーザ名です。さらにその左側が「PRIVATE」になっているのが分かりますでしょうか?
これは自分だけが参照できる状態を示しています(しかし、ページ遷移するとPUBLICになるようです)。

これでこのリポジトリは自分のものになったので、これに対して修正を加えるようにします。
しかし、このままでは修正ができないので、ダウンロードをします。
画面右下を見てください。「HTTPS clone URL」と書かれた場所にURLが書いてあります。
このURLをコピーします。その右側にあるクリップボードマークを クリックすると、コピーできます。簡単ですね。

では、このURLを元に、リポジトリをダウンロードします。
ここで、Domino Designerを起動します。
「Git Repojitoriesビュー」を開いて、「Clone a Repository」メニューを実行します。
Clone a Repositoryメニューを実行

すると、「Clone Git Repository」というダイアログが表示されるので、GitHubのユーザ名とパスワードを入力して[次へ]をクリックします。
なお、レポジトリのURIやHost等はクリップボード経由で入力された状態になっています。
Git Repositoryのソース情報の入力

次にブランチ情報の選択画面になりますが、今回はこのまま[次へ]をクリックします。
(大きなプロジェクトの場合、master以外のブランチが作られることがあります)
ブランチ情報の選択

今度は、ローカルPC上のどのディレクトリにリポジトリ情報を作成するのかを選択する画面になるので、ディレクトリを設定して[次へ]をクリックします。
通常、eGit for Domino Designerをインストールしてあれば、ディレクトリはNotesデータディレクトリ内に作られます。
ローカルリポジトリの場所を選択

ローカルにリポジトリを作成する際の最終確認の画面になるので[終了]をクリックします。
最終確認画面

これで、ローカルPCにフォークしたリポジトリ(クローンと言います)が作成されます。
Git Repositoriesビューにクローンが作成された

このままでは、Domino Designerのオンディスクプロジェクトとして認識されないので、このローカルリポジトリをオンディスクプロジェクトとして登録します。
マウスで右クリックして、「Import Projects...」メニューを実行します。
プロジェクトのインポート
Import Projectウィザードのダイアログが表示されるので画面の指示に従います。
今回は、すでにローカルリポジトリがディスクに作成してあるので「Import existing projects」を選択して[次へ]をクリックします。
インポートタイプの選択

次にプロジェクトの選択画面になります。通常、一つしか選択されませんが、テクてくのハンズオンでは2つ表示されています。今回は、上のプロジェクトを選択した状態で[終了]をクリックします。
※実際のプロジェクトでは、管理者の方に確認してください。
プロジェクトの選択

これで、ローカルリポジトリがDomino Designerのオンディスクプロジェクトとして登録されました。
ナビゲータビューを開いて見てください。登録されているのが分かります(下図)。
オンディスクプロジェクトとして登録されたクローン

さらに、これをノーツアプリケーション(xxxx.nsf)と関連付けるので、オンディスクプロジェクトをマウスで右クリックして、「チーム開発」「新規NSFに関連付ける」メニューを実行します。
チーム開発メニューの実行

「新規NSFに関連付ける」ダイアログが表示されるので、サーバー名とファイル名を入力して、[終了]をクリックします。
※通常は、ローカルで良いでしょう。(サーバーだと他の人とバッティングする可能性がありますよね)
新規NSFの場所を入力

nsfファイルが作成され、インポート処理が完了すると、ナビゲータビューのオンディスクプロジェクトがどのnsfと関連付けられたのかが分かるようになります。
ナビゲータビューの見た目が変わる

これでオンディスクプロジェクトを元に、nsfファイルが作成されました。
アプリケーションビューを表示すると、ノーツアプリケーションが作成されているのが分かります。
フォームやビュー、XPage等の設計要素が正しく作成されていることを確認しましょう。
アプリケーションビューにnsfファイルが表示されている


これで、個人でノーツアプリケーションの修正が行えます。
当然、Domino Designer上からアプリケーションのプレビューも行えます。

修正が完了したら、GitHub上に戻すのですが、そのままCommit/Pushではいけません。
その方法については、次回に説明します。

ということで今日はこの辺で・・・


合言葉は「ノーツでWeb化するならXPages!





【PR】ノーツ/ドミノに関するお問い合わせは下記まで【PR】
単純なDBのカスタマイズから他アプリケーションとの連携までご要望にお応えします!
Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: