Estoy trabajando en un equipo con algunos desarrolladores que usan git en BitBucket. Todos estamos trabajando en una dev
rama, no presionando master
hasta que se publique.
Uno de los desarrolladores cometió un código incorrecto que sobrescribió el mío por accidente, y ahora estoy tratando de enviar el código correcto al repositorio. He estado leyendo sobre este error durante unos días, ya no puedo presionar al repositorio porque recibo el siguiente error:
! [rejected] master -> dev (fetch first)
error: failed to push some refs to 'https://myusername@bitbucket.org/repo_user/repo_name.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Sigo las instrucciones y pull
, pero luego recibo un conflicto de fusión. Después de ingresar un mensaje para el conflicto de fusión, mi código local ahora es el código incorrecto que el otro desarrollador cargó por accidente (como se esperaba del pull
). Así que reemplazo el código incorrecto con la copia de seguridad que copié antes de realizar el envío, y cuando intento presionar nuevamente, obtengo el mismo error.
Es realmente frustrante, realmente quiero ayudar a mi equipo y contribuir, pero no puedo debido a este error. ¿Alguien sabe cómo solucionar este problema? Agradecería mucho cualquier ayuda.
Estos son los comandos que ejecuto para confirmar, si ayudan a alguien:
git pull remotename master:dev
git add --all
git commit -m "some message"
git pull remotename master:dev
git push remotename master:dev
Pensé que si mantenía este orden, no recibiría conflictos de fusión. Creo que estaba equivocado. Gracias de nuevo
Actualización: Debo agregar que he buscado durante unas horas en Google y stackoverflow, y seguí instrucciones diferentes, pero todavía no puedo push
ir a la dev
sucursal.