🤞
自分流gitの使い方
自分で決めた方針のメモです。
ブランチの規則
master (main)
リリース版。
- 100%動作する状態のものだけをコミットする。
- 直接コミットするのは禁止、devブランチからsquash mergeでのみコミットする。
dev
開発版。
- 動作するものをコミットする。
- 基本的に$(feature)ブランチからの
squashmergeでコミットする。devかmasterのいずれかはsquashマージとする。 - 1回のコミットで済む程度の軽微な修正だけ直接コミットしてよい。
$(feature)ブランチ
実際に作業に使用するブランチ。名前は機能の名前などわかりやすいものをつける。
- 動作が保証できない状態でもコミットしてよい。
- 直接コミットしてよい。
実際の作業
初回
git init
- READMEファイルを作る
git commit -m "first commit"
git checkout -b dev
新機能を追加するとき
git checkout -b $(feature)
- featureブランチ上で動く状態で機能を実装する
git checkout dev
git merge --squash $(feature)
$(feature)ブランチにdevブランチの更新を取り込むとき
git checkout $(feature)
git rebase dev
参考
- Gitのブランチモデルについて
https://qiita.com/y-okudera/items/0b57830d2f56d1d51692 - Gitのリベースの説明
https://zenn.dev/kaityo256/articles/rebase_of_git - @pudding_info先生のありがたいアドバイス
Discussion