SiG Staff Blog

やっていることをつらつらと

ソースレビューにJetBrainsのUpsourceを使ってみる - 準備

Upsourceって何につかうの?

VOYAGE GROUPさんがやられているPodcastでJetBrains製品の特集会(?)でそのアプリの存在を知りました。

ajito.fm

どんなツールかというと、GitHubとかでPull Requestした時にコードにコメントとか入れるあの機能を SVNとかGitとかでも使えるようになるアプリです。

初めに聞いた時は、GitHubとかのPR機能を使えば別に要らないんじゃないの?と思っていましたが、

Upsourceを使うと、

  • PhpStormがしてくれる静的解析を行ってくれる。
  • phpDocを見る事が出来る。
  • コードジャンプが出来る。
  • PhpStormと連携して、IDE上でレビューのやり取りが出来る。

これらの事が出来るみたいです。

ちなみに、PhpStormはこちら www.jetbrains.com

PRのレビュー機能だとテキストでしかコードを見れないので、

  • 変更したソースで使用しているメソッドってこれで使い方あってる?
  • この変数定義はどんな感じだったかな?

とか、レビューがとても楽になりそうな予感。PhpStormとの連携も気になる。 しかも、10ユーザーまでは無料で使えるそうです。ヤバい!

という事で試してみました。(Windowsで)

まずはダウンロード

ともあれ、公式サイトでダウンロード www.jetbrains.com

  1. 公式サイトにアクセス。
    f:id:Bee_Flim:20170927165005j:plain
    サイトトップ
  2. プラットフォームに合わせた物をダウンロード。
    f:id:Bee_Flim:20170927165031j:plain
    ダウンロード画面
  3. ZIPを任意のディレクトリに解凍します。
    f:id:Bee_Flim:20170927165039p:plain
    test
  4. binの中に移動してこれらのファイルがある事を確認。
    f:id:Bee_Flim:20170927165043p:plain
    ファイルの確認
  5. デフォルトでは80ポートを使用してサーバーが上がってしまうので、設定を変更します。
    1. ターミナルを起動してbinディレクトリに移動。
    2. コマンドを実行 bash bash upsource.sh configure --listen-port 11111 --base-url http://localhost:11111
      f:id:Bee_Flim:20170927165048p:plain
      設定を変更
  6. 設定の変更が終わったら、立ち上げ。 bash bash upsource.sh start
    f:id:Bee_Flim:20170927165051p:plain
    起動
  7. ブラウザが立ち上がって初期化が始まります。ちょっと時間がかかります。
    f:id:Bee_Flim:20170927165058p:plain
    初期化の画面
  8. 起動が成功すると、こんな画面が表示されます。次にProjectsを押して、プロジェクトを登録していきます。。
    f:id:Bee_Flim:20170927165106j:plain
    Upsourceのトップ
  9. プロジェクトの一覧が出るんですが、最初なので空っぽですね。Create projectを押して登録します。
    f:id:Bee_Flim:20170927165110p:plain
    Projectsの登録
  10. ぐわっといっぱい出てきますが、このタブでは緑の枠の所を設定するだけです。
    1. Project nameに任意の名前を付けて下さい。IDとreviewIDは自動で入ります。
    2. VCSの種類を選んで、Gitとかだったらhostingがどこなのか設定してください。ヌーラボさんのBacklogとかならGenericを選んで、GitのURLをRepositoryに貼ってください。
    3. Authは接続の方法を選んでください。
    4. Test connectionで接続が出来ることを確認。エラーになったら上の設定のどこかが間違っています。
      f:id:Bee_Flim:20170927165114p:plain
      VCSの設定
  11. 次にCode Intelligenceのタブをクリックして Enableにします。JavaScritpとかPHPとか各々の環境に合わせて設定してください。
    f:id:Bee_Flim:20170927165120p:plain
    Intelligenceの設定
  12. Advancedタブを選んで、デフォルトにするブランチ名を入れておくと便利かもしれません。
    f:id:Bee_Flim:20170927165126p:plain
    デフォルトブランチの設定
  13. 登録が終わると、先ほどのVCSのコミットツリーが表示されます。今回はfix/sampe_testをpushしてPRを送りました。
    f:id:Bee_Flim:20170927165131j:plain
    プロジェクトページ
  14. ブランチにマウスを合わせるとReview changesが出るので、その中のCreate reviewをクリックするとレビューが作られます
    f:id:Bee_Flim:20170927165134j:plain
    reviewの作り方
  15. GitHubみたいな感じでコードにレビューを書いていきます。Reviewrsにレビュアーを設定などもここでします。
    f:id:Bee_Flim:20170927165138p:plain
    レビュー画面
  16. 変数やメソッドをクリックするとphpDocを見る事が出来ます。
    f:id:Bee_Flim:20170927165143p:plain
    phpDocの表示
  17. コメントを入れるとこんな感じになります。
    f:id:Bee_Flim:20170927165148p:plain
    コメントの入力
  18. コメントにタグを付ける事も出来ます。バグとかコーディング規約違反とか
    f:id:Bee_Flim:20170927165153p:plain
    指摘のタグもつけれる

サーバーの停止

サーバーを止めたい時はstopを実行 bash bash upsource.sh stop

f:id:Bee_Flim:20170927165255p:plain
サーバーの停止

レビュー環境の構築はこれで完了

これでレビュー環境の構築は終わり。 ダウンロードとか起動に少し時間がかかるだけで、立ち上げること自体は簡単にできてしまいました。

次はIDEとの連携をさせようと思います。