GitコードレビューツールGerrit
GitコードレビューツールGerritの情報をリンクしておく。
以下ラフなメモ書き。
【元ネタ】
Gerritを約1年運用してみて | ちとろぐ
gerrit - Gerrit Code Review - Google Project Hosting
Google製のGit用ソースコードレビューシステム「Gerrit」 - MOONGIFT|オープンソース・ソフトウェア紹介を軸としたITエンジニア、Webデザイナー向けブログ
Twiwt:Blog / jugyo : 僕が Gerrit について理解している数少ないこと
Jenkins Gerrit Trigger Plugin の使い方 | Aiming 開発者ブログ
GerritはGitだけのためのコードレビューツール。
上記の記事の感想で面白い点は、addやcommitのような基本的コマンドだけでなく、rebaseやmergeなどのGitコマンドの使い方が分かったという点。
トピックブランチ上で修正したパッチがコードレビューされてOKの後、trunkへマージされる時に、どのような方法でマージすべきなのか?
コンフリクトが起きた場合、rebaseを使えば過去の修正履歴も保持したままturnkの最新の修正履歴も反映させてマージしてくれる。
Mercurialでもrebaseはあるし、mqやtransplantのようにMercurial特有のコマンドもある。
この辺りの機能は、複数のブランチを保守しながら開発していく並行開発で必要。
特に、基本的な仕様は似通っているが細部の仕様が微妙に違う製品ファミリーの開発、組込製品の派生開発で重要なテクニックになるだろうと思う。
Gerritで興味深いのは、コードレビューのステータスとして、+1 Verified,+2 Looks good to me, approvedがあること。
単にパッチが動くものだけではなく、ソースとして綺麗だよ、と言うレベルまでレビューできるか?
Jenkins+Git+Gerritを連携させた仕組みも興味深い。
チケット駆動開発とJenkinsの連携: プログラマの思索にも書いたけれども、turnkへトピックブランチで作ったパッチをマージさせたら、自動テスト・ビルド・デプロイまでの一連の流れを自動化した方が楽だ。
これがビルドパイプラインの考え方であり、継続的デリバリーの概念へつながっていく。
色々考えてみる。
| 固定リンク
「ソフトウェア工学」カテゴリの記事
- アーキテクチャ設計はベストプラクティスを参照するプロセスに過ぎないのか?~Software Processes are Software, Too(ソフトウェアプロセスもまたソフトウェアである)(2024.09.22)
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- マイクロサービス設計は従来のアーキテクチャ設計と何が違うのか(2024.01.02)
「構成管理・Git」カテゴリの記事
- 「GitLabに学ぶ 世界最先端のリモート組織のつくりかた」の感想(2023.12.10)
- パッケージ設計の原則の意義は変化しているのか(2023.09.30)
- 小説活動にプルリクエスト駆動が必要になってきた(2022.05.08)
- 【資料公開】チケット駆動開発の解説~タスク管理からプロセス改善へ #redmine(2022.01.14)
- プログラミングしてる時はでっかいピタゴラ装置を作ってるみたいな感じ(2022.01.09)
「チケット駆動開発」カテゴリの記事
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
- チケットはデータでとプロセスの二面性を持つ #redmine(2023.12.24)
- 小説活動にプルリクエスト駆動が必要になってきた(2022.05.08)
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
- プロジェクト管理の基本はテーラリング、Redmineはプロセスをテーラリングするツール(2022.04.21)
コメント