私たちはmasterブランチを持ち、featureブランチで機能を開発する数人の開発者のチームです。リリース時にマスターのブランチをリリースします。すべてのバグ修正はmasterで行われ、関連するリリースブランチに厳選されます。
https://gist.github.com/jbenet/ee6c9ac48068889b0912で説明されているように、ロールバックして二分することができる各新機能のアトミックマージコミットが必要です。このような歴史を私たちに与えてくれるはずです。
* aa55ffe - (HEAD, master) D
* 88425f8 - C
* 7bc519f - Merge branch 'feature-X' into master
|\
| * 9364e61 - feature-X: 2
| * bc76674 - feature-X: 1
|/
* 88425f8 - B
* 7bc519f - Merge branch 'feature-Y' into master
|\
| * 0e0deea - feature-Y: 4
| * 11079b5 - feature-Y: 3
| * 9364e61 - feature-Y: 2
| * bc76674 - feature-Y: 1
|/
* c765ae3 - A
私たちの問題は、同じ機能で複数の開発者が機能ブランチのリモートバージョンを追跡するときに発生します。一部の開発者はその機能に取り組んでいますが、masterでの機能開発中にバグ修正が行われる可能性があるためです。これらのバグ修正を機能ブランチに含める必要があります(つまり、バグが修正されたマスターで新しい状態の機能ブランチをリベースします)。
これを行う方法には、リモート追跡ブランチの破損を含まないため、クリーンな履歴と他の機能開発者の作業コピーが台無しになりませんか?
Fxバグを機能ブランチにチェリーピックし、機能ベースブランチの新しいリベースバージョンをマスターにマージする直前にリモートトラッキングブランチを孤立させる最終リベース後に、gitに自動的に解決させることができますか?