2012-04-02 13 views
10

Por lo tanto, mi entorno de trabajo tiene precisamente una rama con un acompañante remoto en Github. Intento hacer git pull --rebase para evitar que git push cree mensajes de confirmación de fusión que no proporcionen información nueva a otras personas que trabajan en este proyecto y que solo agreguen los trabajos. Pero cuando intento que, me da esto:"git pull --rebase" lleva a "No se puede volver a establecer en varias ramas"

From https://github.com/our_profile/our_repository 
* branch   HEAD  -> FETCH_HEAD 
Cannot rebase onto multiple branches 

Y el tirón aborta. Llamar al git branch me informa que solo tengo una sucursal en mi máquina local, entonces, ¿qué está pasando?

+0

Sí, y ejecutar * '--rebase git pull' * para la segunda trabaja a tiempo! Eso es porque durante la primera acción, git buscó los datos, de modo que las ramas maestras remotas y locales comenzaron a indicar el mismo compromiso. –

Respuesta

9

intente especificar exactamente qué rama remota que desea tirar:

git pull --rebase origin branch 

Alternativamente puede hacer git fetch todos los cambios desde el repositorio remoto, y luego reajustar manualmente:

git rebase origin/branch 
+0

Esto casi funcionó, pero terminó causando problemas que implican muchos archivos marcados para su eliminación. Tuve que entrar a GIT GUI para guardar el trabajo que había hecho con ellos. – bourgtai

+0

¿Sabes por qué ocurrió esta situación? – dbn

-2

La solución más simple Descubrí que era utilizar el elemento de menú contextual de TortoiseGit "Git Sync". En él es un medio para hacer buscar & rebase en su rama de trabajo actual.

+0

Pensé que git pull hizo una búsqueda por defecto, lo cual es evidente por todos los mensajes de recuperación que entran. ¿Qué es lo que se agrega? – Hazok

3

En mi caso, tenía que ser específico para saber qué mando a distancia y mover la bandera --rebase al final del comando.

Así: git pull origin master --rebase

aprendido de esta respuesta: Git: Cannot rebase onto multiple branches

Cuestiones relacionadas