Tengo una rama git llamada 9-sign-in-out
con un código que funciona perfectamente y quiero convertirla en la maestra. Actualmente estoy en la rama maestra.
$ git branch
9-sign-in-out
* master
Estoy tratando de cambiar a 9-sign-in-out
rama, pero no me permite:
$ git checkout 9-sign-in-out
app/helpers/application_helper.rb: needs merge
config/routes.rb: needs merge
error: you need to resolve your current index first
¿Alguna idea de cómo puedo ignorar todos los errores de la rama maestra y convertir la 9-sign-in-out
rama en maestra? Tal vez git rebase ? Pero no quiero perder el código en la 9-sign-in-out
rama.
git
branch
git-merge
git-branch
Sayanee
fuente
fuente
Respuestas:
Vale la pena entender qué significan esos mensajes de error,
needs merge
eerror: you need to resolve your current index first
indicar que una fusión falló y que hay conflictos en esos archivos. Si después de todo ha decidido que cualquier combinación que intentara hacer era una mala idea, puede volver a la normalidad con:Sin embargo, de lo contrario, debe resolver esos conflictos de fusión, como se describe en el manual de git .
Una vez que haya lidiado con eso mediante cualquiera de las técnicas, debería poder pagar la
9-sign-in-out
rama. El problema con solo cambiarle el nombre9-sign-in-out
amaster
, como se sugiere en la respuesta de wRAR, es que si ha compartido su rama maestra anterior con alguien, esto creará problemas para ellos, ya que si el historial de las dos ramas divergió, publicará reescritas historia.Esencialmente lo que quiere hacer es fusionar su sucursal tema
9-sign-in-out
enmaster
pero exactamente mantener las versiones de los archivos en la rama tema. Puede hacer esto con los siguientes pasos:fuente
webrat.log
.)fuente
como se sugiere en
git status
,Solía
git add
terminar la fusión, luegogit checkout
funciona bien.fuente
mi problema fue (master | REBASE 1/1)
este comando funcionó para mí
fuente
git commit -m "Conflicto maestro resuelto solucionado".
fuente