es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Enviar Git existente al nuevo branch

He estado teniendo algunos problemas al intentar enviar mi rama a Git y no he podido encontrar una respuesta clara que pueda seguir.

Descargué un clon de un repositorio y realicé algunos cambios. Luego, creé una nueva rama en Github titulada ‘features/library’.

Luego completé:
git switch features/library
git status
git add *
git commit -am 'Mi mensaje'
git branch --set-upstream-to origin feature/library
git push origin features/library

Recibo un error de:

 ! [rejected]        feature/library -> feature/library (non-fast-forward)
error: failed to push some refs to 'https://github.com/my/repo.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Al examinar el error, no parece que ningún código esté detrás de nuestra rama principal, aunque está arrojando un error. Tenemos muchos cambios en este nuevo commit, lo cual puede ser la razón por la que se lanza el error.

Me gustaría poder enviar mi rama local a su nueva rama en Github sin sobrescribir mis archivos / cambios locales existentes y afectar la rama principal.

¡Agradezco cualquier ayuda!
¡Saludos!

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Parece que el mensaje de error está indicando que hay cambios en la rama remota que no se han fusionado en tu rama local. Para poder enviar tus cambios, primero debes obtener todos los cambios de la rama remota y fusionarlos en tu rama local. Puedes hacer esto con el siguiente comando:

    git pull origin features/library
    

    Una vez que hayas resuelto cualquier conflicto y fusionado los cambios, deberías poder enviar tu rama local a la rama remota sin problemas. Puedes usar el mismo comando que intentaste antes:

    git push origin features/library
    

    Si aún encuentras problemas, es posible que quieras verificar los permisos de la rama en el repositorio remoto para asegurarte de tener los permisos adecuados para enviar a esa rama. También puedes intentar forzar el envío de tus cambios, pero ten en cuenta que esto puede sobrescribir cualquier cambio en la rama remota:

    git push -f origin features/library
    

    Como siempre, asegúrate de hacer una copia de seguridad de tus cambios y trabajar en una rama separada para evitar afectar la rama principal.

Comments are closed.