開発の流れ - KatLab-MiyazakiUniv/etrobocon2025 GitHub Wiki
開発の流れ
全体の流れ
- ミーティングを行う
- Notionでタスクを作成する
- タスクを実施する
- ローカルリポジトリのmainブランチを最新のmainブランチに更新する
- 担当するタスクの作業用のブランチとチケットブランチを作成する
- 実装する
- ビルドとテストを実行する
- プルリクを出し,レビューを依頼する
- レビューを受ける/修正する
- プルリクをマージする
1. ミーティングを行う
- 先週の報告
- 次週のタスク振り分け
2. Notionでタスクを作成する
- タスクのヘッダー部の作成 (主にミーティングで行います)
- タスクのフッター部を作成
- 理由,やること,完了条件 タスクの内容を明確化します
- 実現方法,関連資料
完了条件を満たすために何を行う・行ったかや,タスクで参考にした資料を記述します
3. タスクを実施する
実装スタイルは縛りませんが,以下のようにするとスムーズにいくかなと思います
3.1. ローカルリポジトリのmainブランチを最新のmainブランチに更新する
# etrobo環境の場合
$ cd ~/etrobo/raspike-athrill-v850e2m/sdk/workspace/etrobocon2025
$ git switch main
$ git pull origin main
3.2. 担当するタスクのチケットブランチと作業用のブランチを作成する
ブランチを作成する. チケットブランチ名は「ticket-X」,作業用ブランチ名は「work-X」とし,XはNotionで割り振られたIDとする.すべて「KL25-?」の形になっているはず.下の画像で言うと,「KL25-12」.今後の説明は,これを使う.
# ブランチの作成と移動
$ git switch -c ticket-KL25-12 main
$ git switch -c work-KL25-12 main
3.3. 実装する
主にやることは,以下の5つです.
- ソースコードの記述
- テストコードの記述
- ビルド,テストの実施
- gitでの管理
- Notionの更新
- 共同メンバー,全体とのコミュニケーション
コーディング規約は守ってください.
ビルド方法,テスト方法はREADME.mdを参照.
特に,チーム開発なので,同じタスクを抱えているメンバーとはしっかりコミュニケーションをとって,役割分担してください.
また,不明な点や方針に疑問を持ったら,どんなことでも躊躇なくslackで共有してください.「できました!」とかの明るい報告ももちろん良いです.
gitでの管理については,チケットブランチと作業用ブランチがありますが,適当な作業を作業用ブランチで行います. 作業用ブランチでビルドとテストが通る,かつ,それまでの変更で意味のある単位になったら,チケットブランチにワークブランチのコミットを1つのコミットとしてまとめてください.今後,チケットブランチのプルリクをmainにマージしていきます. ブランチのプッシュに関しては,ワークブランチも行ってよいです.
# (例)ticket-KL25-12
$ git merge --squash work-KL25-12
ワークブランチとチケットブランチのコミットメッセージは、変更に応じて
- add: 新規に追加した内容
- update: 更新した内容
- fix: (バグなどを)修正した内容
- delete: 削除した内容
- refactor: 振る舞いには影響がないが可読性を高めるために行った内容
を使い分ける。
※コミットを複数に分けたい場合は,git reset HEAD file_name
で一旦addを取り消してコミットする.
(コミットはgit status
をした時に緑色になっているファイル変更のみ適用される)
コミット後に再度addしてcommitすればよい.
3.4. プルリクを出し,レビューを依頼する
- 本リポジトリの自分がpushしたチケットブランチから,プルリクを出す.
- プルリクのタイトルは,「#タスクID タスク名」とする.
- テンプレートに従って,プルリクの内容を記述する
- でレビューして欲しい人を選択する.この時,
et2025
を選択すると,チームの全員を指定できる
プルリクとレビュー依頼をすると,Notionのステータスに自動で反映されます.
3.5. レビューを受ける/修正する
手順3.1.~3.5.を繰り返す.pushするだけでプルリクに反映される.
4. プルリクをマージする
規定以上のメンバーからApproveをもらえたら,マージする. 実際のマージは,ミーティング時に最終確認をしてから行います.