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

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

2013年8月4日日曜日

GitHubを使ってのチーム開発 ~応用編~ (後半)

8月ですね。前回の投稿が途中で終わっているのにもかかわらず、二週間も止めてしまいました。大変失礼いたしました。

ということで、今回は前回の続きです。

始める前にボタンをクリックしましょう。
にほんブログ村 IT技術ブログへ


さて、前回はGutHub上にある共通プロジェクトを自分のリポジトリにForkして、それをローカルPC上にクローンとしてコピーして、nsf ファイルに関連づけをしたところまでやりました。


通常、ここまで出来たら、nsfファイルを編集します。これはDomino Designerで従来通りアプリケーションの修正を行えば良いので、詳しい説明は省きます。

修正が終わったら、オンディスクプロジェクトにそれを反映させる必要があります。
nsfをマウスで右クリックして、[チーム開発][オンディスクプロジェクトとの同期]メニューを実行します(下図参照)。
nsfとオンディスクプロジェクトの同期

なお、この作業は省略することもできます。
Domino Designer上で[ファイル][プリファレンス]メニューを実行して、[Domino Designer][ソース制御]タブを開きます。そこにある「変更時の設計要素の自動エクスポート(NSFからディスクへ)を有効にする」と「変更時の設計要素の自動インポート(ディスクからNSFへ)を有効にする」のチェックをつけておきます(下図参照)。
ソース制御のプリファレンス

これで、nsfに変更を行ったら、オンディスクプロジェクトに自動で同期されるようになります。
また、オンディスクプロジェクトに変更を行ったら、自動でnsfに同期されるようになります。

今度は、オンディスクプロジェクトの変更内容をGitHubに反映させます。まずは、変更内容をコミットする必要があるので、次の手順でコミットを行います。
Domino Designerのナビゲータビューを開きます。
オンディスクプロジェクトをマウスで右クリックして、[Team][Commit...]メニューを実行します。
オンディスクプロジェクトの変更をコミットする

「Commit Changes」ダイアログが表示されるので、変更内容を入力後、変更したファイルを選択して、[Commit]ボタンをクリックします(下図参照)。
コミット内容の入力

今度は、GitHub 上の自分のリポジトリに変更内容を反映させます。
再度、オンディスクプロジェクトをマウスで右クリックして、[Team][Push to Upstream]メニューを実行します。
オンディスクプロジェクトをリモートリポジトリにPushする

変更内容がGitHubのリポジトリにPushされます。
Pushが終了すると、下図のような完了確認ダイアログが表示されるので、[OK]をクリックします。
Pushの完了確認ダイアログ

ここで、GitHub の自分のリポジトリにアクセスすると、確かに変更内容が反映されたことが確認できます。
GitHub上の自分のリポジトリ

今度は、Fork元のリポジトリに反映するために、Pull Requestを発行します。
これは、元のリポジトリは管理者しか修正ができない為です。
GitHub のリポジトリの画面右側に「Pull Request」というリンクがあるので、そこをクリックします。
Pull Requestリンクをクリック

Pull Requestの画面に変わるので、「New Pull Request」ボタンをクリックします。
Pull Requestする内容が画面に表示されるので、一通り確認します。
確認が終わったら、画面上部にある「Click to create a pull request for this comparison」というリンクがあるので、クリックします。
Pull Request画面

Pull Requestする際のメッセージを入力する画面が展開されるので、内容を入力して、[Send pull request]をクリックします。
Pull Requestコメント入力画面

Pull Requestが成功すると、Fork元のリポジトリ画面に切り替わります。
Pull Requestが成功した

これで後は、リポジトリの所有者がこのPull Requestを処理してくれます。

本来はそこの手順まで書きたかったのですが、私が所有しているGitHubのプロジェクトがなかったので、それはまた別の機会で・・・

ということで今日はここまでとします。





【PR】ノーツ/ドミノに関するお問い合わせは下記まで【PR】
単純なDBのカスタマイズから他アプリケーションとの連携までご要望にお応えします!

Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: