アプリ開発する上で、様々なプロジェクトのタスク管理ツールを使ってきましたが、最終的にGithub projectsに落ち着きました。
弊社プロジェクトで実際に運用しているルールは以下の通りです。 小規模なプロジェクトであれば、問題なく回るのではないかと考えています。
- リポジトリごとにProjectを一つ作成する
- Columnは以下の通りとする
- Inbox: いつかやるけど今じゃない
- ToDo: やる必要があるもの
- in Progress: 今やってるもの
- Check: 作業が終わってるけど本番確認がまだ
- Done: リリースしたもの(closeしたら自動的にDoneに移動する)
- Pending: 何らかの理由で作業が止まっているもの
- 開発手法はGithub Flowを用いる
- ブランチ名は「issue番号-概要」
- 1234-fix-conditions
- PRのdescriptionに issueのリンクを貼る
- issueとPRが関連付けされる
- issue:PRは1:N
- 一つのissueにつき、複数のPRを作成しても良い
- 全てのPRがマージされたらissueをCheckに移動させる
- 大規模な機能開発の場合は中間ブランチを作成する
- Epicのような運用
- 例) master -> calc_orders/master -> cals_orders/1234-fix-conditions