最近svnからgitに移行しました。現在、リリースブランチとマスターブランチがあります。リリースの日にリリースをマージしてタグ付けします。パッチリリース後のマスターへのリリースの統合git
ここで、パッチリリースを行う予定だった場合。どのブランチを修正プログラムのブランチとして作成し、それをマスターにマージして、そこから新しいタグを作成してリリースします。次に、その修正プログラムをリリースにマージして、QAがテスト中にリリースですべての変更をプロダクションに反映させるようにします。
次に、リリースブランチをマージしてmasterに戻す必要があるときに問題が発生します。私たちは、マスターが
2を発散しているように早送り(これもコミットマージを追加します)私たちは、通常のマージを行う場合でも、それが安全になります)リリースを行うことはできません
1)は、そのコードは次のようになります私たちはマスターからリリースをリベースすることができますが、これは一般的な公開ブランチです(開発者のローカルブランチを台無しにするでしょうか?)、リベースリリースも危険ですか? 我々は理想的なリベースしていない場合、我々はあなたがリリースを行うにはどうすればよいのクリーンすべてのリリースでは、タグ・ポイントとマスターブランチの履歴のいずれか
を有し、通常この
"リリース日にリリースをマスターにマージします。"あなたが 'git checkout master; git merge release'と呼ばれています。 – Schwern
'release'を' master'にマージします。 'master 'は' diverged 'を持っていますが、' release'と同じコミットなので、矛盾はありません。あなたが説明するものは、[git flow](http://nvie.com/posts/a-successful-git-branching-model/)戦略とよく似ています。 gitフローを使うときは 'development'ブランチがあります(あなたの' release'ブランチに似ています)。 'master'から分岐したホットフィックスは' master'と 'development'の両方にマージされます。 '開発 'は後で再び'マスター'にマージされます(gitフローの場合は 'release'ブランチを介して)。 – Peter