WIPパターン
1 目的
メインラインから実装中のコードを隔離
メインラインは常に本番環境と同期している状態にしたいので、メインラインに実装中の機能が混じるのは避けたい。
実装→レビューの流れを分かりやすくしたい
ひとつのブランチに複数の変更が入るような錯綜した状態ではレビューを行うことは不可能である。
2 前提条件
バージョン管理システムを使っていること
当然ながらバージョン管理システムを使用して開発をしていることが前提となる。
PullRequestに対応したツールを利用していること(必須ではない)
こちらは必須条件ではないが、GitHubやGitLabなどのPullRequestに対応したツールを使っている方が圧倒的に作業が楽である。
3 手順
(1) masterブランチを最新化
# masterブランチに移動 git checkout master # 最新のmasterを取得 git pull origin master
(2) ブランチを作成
git checkout -b <new_branch>
(3) 空コミット
git commit --allow-empty -m "[WIP]タイトル的な文章"
(4) リモートリポジトリにプッシュ
git push origin <new_branch>
(5) GitHubでプルリクを作成する
- GitHubの画面上からプルリクを作成
(6) コーディング
- 黙々と実装。
(7) プッシュ
- 適当なタイミングでpush
- 帰宅する前はpushしておくと色々良い
(8) レビュー
- [WIP]タグを外す
- GitHub上でレビュー
(9) フィードバック取り込み
- 修正してプッシュ
(10) マージ
- masterブランチにマージして作業ブランチを削除
4 完了条件
作業ブランチの成果がメインラインにマージされていること
5 注意事項
特になし