Cambiar un maestro y una twig de características

Nos encontramos en la situación en la que el maestro tiene un nuevo trabajo de características, y la característica 1 (que se bifurca en el maestro) es el maestro estable. ¿Cómo podemos cambiar las cosas para que "intercambien lugares"? Es decir, feature1 se convierte en master y master se convierte en newfeaturebranch .

Encontré un par de preguntas similares, pero en esos casos ya no les importaba el antiguo maestro. Aquí, queremos preservar el maestro actual como la nueva twig de novedades.

He pensado en una forma de hacer esto:

  1. Crear una nueva twig de propiedad del maestro actual.
  2. Revertir / eliminar confirmaciones desde el maestro al punto de ramificación de la característica1.
  3. Combina feature1 en master .
  4. Eliminar twig feature1 .

Puedes cambiar el nombre de las twigs:

git branch -m master newfeaturebranch git branch -m feature1 master 

EDITAR: esta publicación fue escrita antes de que edites tu pregunta, cuando decías que simplemente querías "intercambiar lugares". Si no necesita conservar los nombres, la solución de Poke es suficiente.


Necesita una tercera twig tmp , al igual que el intercambio de variables en la progtwigción:

  • git checkout -b tmp master : tmp nueva twig de tmp creada desde el master
  • git branch -D master : eliminar branch master
  • git checkout -b master feature1 : recrea master desde feature1
  • git branch -D feature1 : delete branch feature1
  • git checkout -b feature1 tmp : recrear newfeaturebranch desde tmp (que es donde master estaba al principio)