しおしお

IntelliJ IDEAのことなんかを書いてます

JetBrainsのUpsource触ってみた(プロジェクトの作成)

JetBrainsのUpsource触ってみた(インストールから起動まで) - しおしおの雑記帳の続き。

今回は、リポジトリブラウザやコードレビューをするために必要なプロジェクトの作成手順の纏め。

プロジェクトの作成ページを開く

Upsourceのトップページ(http://localhost:8080)からプロジェクト作成ページヘ遷移します。
f:id:sioiri:20140816005920p:plain

プロジェクト情報を入力

リポジトリの情報やビルドシステムの情報を入力し、保存してあげます。
【入力例】
f:id:sioiri:20140816172252p:plain

Basics
Name
プロジェクト名を入力します。上記画像サンプルのように日本語プロジェクト名もいけるようです。
ID
Nameを英語で登録すると自動で設定されます。Nameを日本語で登録した場合には、空のままなのでプロジェクトを識別するIDを設定してあげます。*1
Version Control
VCS
使用しているバージョン管理システムを選択します。(Git、Mercurial、Perforce、Subversionが選択できます)
Repository URL
リポジトリのURLを設定します。
Authentication method
認証方法を選択します。選択した認証方法によって、以降の入力欄の状態が変わります。選択した認証方法に応じた認証情報を設定してあげましょう。Test connectionボンタンで、リポジトリ参照出来るかのチェックが行えます。
Check interval
リポジトリの状態をチェックしに行く間隔。長い時間にしてしまうと、コミット(プッシュ)後にUpsource上でリポジトリの最新情報が参照出来るまでの時間が長くなってしまうので数分程度にしておくのがいいのではないでしょうか。
Upsource Properties

私は、ビルドシステムでIntelliJ IDEAを選択したので、その場合の設定例となります。

Build system
ビルドシステムを選択します。None、IntelliJ IDEA、Mavenの中から選択します。IntelliJ IDEAを選択すると、IntelliJのプロジェクトをそのまま扱えるので、リポジトリブラウザ上でソースコードを参照する際に定義位置へジャンプなどが行えるようになります。個人的にはGradleに対応して欲しいですね。*2
Path to project model
プロジェクトのルートディレクトリのパスを設定します。リポジトリからチェックアウトしたディレクトリがプロジェクトのルートの場合には空のままで問題ありません。
Code review ID pattern
プロジェクト名を英語で入力した場合自動で設定されます。空の場合には、レビューIDを識別するパターンを入力してあげます。(プロジェクトID-{}などがいいかと思います。)
Index history
過去何日分のインデックスを保持するか?
Run code inspections
チェックをonにするとコードインスペクションがUpsource上で実行されます。IntelliJプロジェクトで使用しているInspection設定をUpsource上で使用したい場合には、IntelliJの設定画面のInspections画面でShare profileのチェックをonにしておきます。
Issue Tracker Integration

コミットコメントのチケット番号からバグ管理システムのチケットへのリンクさせるための設定を行います。
Tracker URLhttp://localhost:8888/siosio/test_pj/issues/{}を設定し、Issue ID prefixtest_pj-{}を設定した場合、コミットコメントにtest_pj-チケット番号があると、コミットコメントの該当部分がバグ管理システムへのリンク(http://localhost:8888/siosio/test_pj/issues/チケット番号)になります。

プロジェクトの保存が終わると、自動的にプロジェクトの管理画面に遷移します。
下の画像のように、プロジェクトの最新のコミット情報などが表示されていればプロジェクトが作成され、リポジトリからプロジェクト情報の取り込みも完了しています。
f:id:sioiri:20140816224732p:plain

リポジトリブラウザへ

プロジェクト名のリンクをクリックすると、下の画像のようにリポジトリブラウザの画面へ移動できます。
f:id:sioiri:20140816225344p:plain

おわり。

*1:Upsource内で一意になっている必要があります

*2:Mavenは試していないのでIntelliJ IDEAと何が違うのかわかりません。