[tDiary]tDiary-3.2.1 RC とコードレビューの話
今月末にリリース予定の tDiary 3.2.1 が code freeze になったのでこの日記も追従。バージョンアップは例によって、 git pull
のあとに Unicorn の再起動だけ。特に問題なく動いている。
@hsbtさんも書いているように、 GitHub 上で pull request によるコードレビューを実施するようになってから、変更点を追いやすくて良い感じ。
5年前にチケット駆動開発のLTをやったときは(tDiaryの開発じゃないけど)こんな感じだった。
- Tracでチケットを作る
- コードを修正する
- svn diff の結果をTracに貼り付けてコードレビュー
- svn commitで反映
今はこうなった。
- GitHubでIssueを登録
git co -b enhanced_plugin
やfix_123
のようにブランチを作成 (fixのほうはissue番号に合わせる)- コードを修正。大きめの修正はローカルでこまめにコミット。
git rebase
でコミットを整理してgit push
- pull requestを送ってコードレビュー。これ以降は
git rebase
を使わない。 - ブランチをマージして完了。
ある程度の粒度では、ブランチ = Issue。1つのブランチには複数のコミットが含まれる。レビューの結果、特定のコミットのみをmasterにマージすることもある。Subversion の頃と比べると、pull requestを使うことでIssueとソースコードが自動で関連付けられるようになった(さらにCIツールでテストまで実行してくれる)のが便利。チケット好きとしては、いい時代だ。