Gitリポジトリのリリース履歴、数千のタグを使わず管理する方法
Maybe a better way to track the release history of a Git repo
Gitモノレポでデプロイのたびにタグを作成すると、数千のrefが蓄積され、packed-refsの検索が遅くなり、git fetchやgit branchの出力も乱雑になる。著者は2019年、各(tier, app)ペアのリリース履歴を、メタ情報コミットを親子関係でつないだ単一のrefで管理する代替案を提案。Gitの通常の履歴メカニズムを利用するため、git logで履歴をたどれ、ロールバックも容易になる。採用には至らなかったが、同様の問題を抱える開発者に有用かもしれない。
Gitは数千のコミットを扱うようにはよく設計されているが、数千のrefを扱うようには設計されていない。
- 1718627440
リリースを作る際にリリースブランチにマージするだけで、このすべてを実際に考えることなく、同じ解決策にたどり着けるでしょう。
- lijok
あるいは、リリースを表すファイルをmainにコミットし、それに基づいて自動化を構築する方法もあります。
- unsloppable
クールで賢いですね。
一つ質問です:古いrefは何に使っているのですか?
私たちは多くなりすぎたら削除するだけです。