Tengo un escenario siguiente:Git ramificación/rebase buenas prácticas
3 ramas:
- Maestro
- MyBranch bifurca maestro con el propósito de desarrollar una nueva característica del sistema
- MyBranchLocal ramificado MyBranch como mi copia local de la sucursal
MyBranch está siendo modificado y promocionado por otros desarrolladores (que están trabajando en la misma función que yo).
Como propietario de la rama MyBranch, quiero mantenerlo sincronizado con Master mediante el rebasado. También necesito fusionar los cambios que realizo en MyBranchLocal con MyBranch.
¿Cuál es una buena manera de hacerlo?
Pareja de posibles escenarios que intentó hasta el momento:
I.
1. Comprometerse a cambio MyBranchLocal
2. Rebase MyBranch contra el Maestro
3. Rebase MyBranchLocal contra MyBranch
MyBranch 4. Combinar con MyBranchLocal
II.
1. Commit cambio a MyBranchLocal
2. MyBranch de mezcla con MyBranchLocal
3. Rebase MyBranch contra Maestro
4. Rebase MyBranchLocal contra MyBranch
III.
1. Comprometerse a cambio MyBranchLocal
2. Rebase MyBranch contra el Maestro
3. MyBranch de mezcla con MyBranchLocal
4. Rebase MyBranchLocal contra MyBranch
Ya sé que el escenario III parece estar metiendo la historia comprometer hasta mucho, potencialmente duplicar compromisos.
¿Cuál es su experiencia? ¿Qué escenarios recomienda para minimizar el esfuerzo de fusión y mantener limpio el historial?