自分がプログラムを開発するときのワークフローをまとめました。何をどのブランチで作業したらいいのか迷わないように、GitHubのPull requestとIssueを活用し、ZenHubで見やすいように可視化しています。
前提
ワークフロー
- ZenHubのパイプライン(作業のステータス)を整理します。自分は一人で開発するときは以下の5つのステータスを設定しています。
- New Issues → おもむろに書き溜めたタスク
- Waiting → 順番待ちの重要度の高いタスク
- In Progress → 作業中のタスク
- Done → 作業完了したがブランチをマージしていないタスク
- Closed → ブランチがマージされたタスク
- やらなければいけないタスク(バグ修正、機能開発)をZenHubのIssueとしてメモします。IssueのあつまりはEpics、EpicsのあつまりはMilestonesのように階層を設けることができますが、自分が一人で開発するときは階層管理が面倒くさいのでIssueのみを作成しています。
- タスク単位でブランチを作成します。
ブランチの命名規則は決めておいた方がよいです。
git checkout -b 210403_feature_A
- ブランチをリモートリポジトリにpushします。
git commit --allow-empty -m "ブランチ初期化"
git push --set-upstream origin 210403_feature_A
- GitHubでプルリクエストを作成します。ブランチとIssueを紐づけ、「Create Pull Request」をクリックします。
- 作業をするIssueは適宜ZenHubのタイルをドラッグアンドドロップして進捗を変更します。
- 作業が終わったらGitHubのPull request画面からブランチをマージし、ブランチは削除しておくとよいです。