Cambiar un tipo de twig después de confirmar

Tengo tres twigs, la main branch , la development branch y la twig new_feature .

El problema es que accidentalmente configuré mi primera confirmación (confirmación inicial) en la development branch .

Captura de pantalla de mi problema: enter image description here

Visión completa de mis twigs: enter image description here Pregunta: ¿Cómo lo cambio a la main branch ?

Como no ha fusionado sucursales remotas (origen / desarrollo y origen / nueva_feature) en el repository local. Entonces hay dos situaciones

No necesita cambios remotos. Sigue estos pasos:

  1. Crea una nueva "confirmación inicial". git checkout master , git checkout --orphan master1 y luego git commit
  2. Rama de desarrollo de Rebase en él. git checkout development y git rebase master1 (si tiene un file de conflictos, use git add filename y git rebase --continue ).
  3. Eliminar la twig master y new_feature. git branch -D master y git branch -D new_feature
  4. Renombrar twig. git branch -m master1 master , git checkout master y git branch new_feature
  5. Fuerza empujar al control remoto. git push -f --all

Necesita cambios remotos Siga los pasos a continuación:

  1. Fusionar los cambios remotos a locales. git checkout development , git merge origin/development , git checkout new_feature , git merge origin/new_feature
  2. Crea una nueva "confirmación inicial". git checkout master , git checkout --orphan master1 y luego git commit
  3. Rama de desarrollo de Rebase en él. git checkout developmen y git rebase master1
  4. Rebase nueva_feature branch en él. git checkout new_feature y git rebase master1
  5. Cambiar el nombre de la twig principal. git branch -D master y git branch -m master1 master
  6. Fuerza empujar al control remoto. git push -f --all

Puede merge su twig de desarrollo con su twig principal o usar el command de cherry-pick de su twig principal para recuperar su confirmación inicial.

 git push -u origin development//(push it up to development) git checkout main //checkout local main branch git pull origin development //Pull latest from remote development branch into main git add -A git commit -m "get latest from development" git push -u origin //push up to main 

Puede cambiar el nombre de su twig de desarrollo.

 $ git checkout development # checkout development $ git checkout -b development-backup # backup development branch $ git branch -D master # delete your current local master $ git branch -m development master # rename development -> master $ git checkout master # checkout master $ git push -f origin master # force push, update remote master