web-dev-qa-db-ja.com

GitFlow:リリースブランチとマスターブランチの違いは何ですか?

このgitflowのチートシート を調べたところです。 releaseブランチがわかりません。

releaseブランチとmasterブランチの違いを誰かに教えてもらえますか?

15
Jordi

違いは、目標とプロセスです。 releaseブランチは通常、次のリリースの準備をしているときに作成されます。リリース予定のすべてのfeatureブランチがすでにdevelopブランチにマージされている場合、releaseブランチをdevelopブランチから作成し、バグ修正のみをコミットしますまたはそれにいくつかの構成変更。つまり、可能な限り安定させるようにします。うまくいけば、releaseブランチが十分に安定しているときに、それをdevelopおよびmasterブランチにマージします。 masterブランチの目的は、本番環境にデプロイできるプロジェクトの最新の安定バージョンを常に持つことです。マスターブランチに直接コミットするのではなく、releaseまたはhotfixブランチからマージするだけです。 CI/CDツールを構成して、masterブランチの更新で本番環境にデプロイすることもできます。

13

リリースで必要なすべての機能が開発されると、新しいコミットに「ロック」するのではなく、次のリリースで期待されるすべての機能を含むリリースブランチを作成します(全体ではマスターではありません)リリースはテストする必要があり、おそらくいくつかのバグ修正があるでしょう...)。

  • このブランチでは、バグ修正、ドキュメントなどしかありませんが、新機能はありません
  • 開発ブランチがロックされないため、次のリリースの新機能をコミット/プッシュして開発およびテストできます。
  • リリースブランチは、ステージング/プリプロダクション環境にデプロイしてQAにリリースをテストさせるのに最適です。
  • リリースブランチが安定したら、それをマスターにマージして製品版に移動できます。マスターは常に安定していて安定している必要があります(修正プログラムを作成しない場合)。

詳細については、これらのリンクをご覧ください。

https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflowhttp://nvie.com/posts/a-successful-git-branching- model /#feature-branches

13
olibiaz

releaseの後、releaseブランチは削除されますが、masterは安定したままです。

1
Li Jin