Me he ramificado desde el maestro y he creado una rama llamada extra_work. Luego realicé muchos cambios en el maestro, que también incluyeron la eliminación de algunos archivos. Más tarde, cuando traté de fusionar la rama 'extra_work' en el maestro, no se está fusionando por completo. No está agregando los archivos que eliminé en el maestro, básicamente todo el trabajo que había deshecho, ahora lo quiero de nuevo en mi maestro. Cómo fusionar estas dos ramas para que todos los archivos extra/trabajo de mi rama 'extra_work' se fusione en el maestro. GraciasGit Merge: no fusionar todos los cambios desde la rama remota
Respuesta
Me encontré con el mismo problema muy recientemente al hacer una refactorización importante. Resolví el problema haciendo git rebase
, desde master
volviendo a basar en extra-work
. No entiendo completamente todo esto, pero la fusión fue terrible (como la experimentaste) pero cambiar de rumbo en esta dirección en particular fue muy fácil. Vea el libro de git en rebasing: http://book.git-scm.com/4_rebasing.html
Rebase su rama extra_work
contra master
. Esto rebobinará su rama extra_work
al estado cuando se ramificó y aplicará las confirmaciones desde master
hasta extra_work
. Luego volverá a reproducir todas las confirmaciones desde extra_work
sobre sí mismo. Si inspecciona git log
, verá las confirmaciones desde master
más atrás en el historial de la sucursal. Debería poder fusionar al master
sin problemas.
git rebase master
- 1. Git: descartar todos los cambios en una rama local divergente
- 2. git push a la rama remota existente
- 3. Git - Cómo fusionar una rama remota en el maestro remoto
- 4. git merge no se combina
- 5. Fusionar solo un conjunto de cambios desde otra rama
- 6. git cherry-pick y merge ignorando los cambios de EOL
- 7. Intentando fusionar desde la rama a la rama principal y cerrar en Mercurial
- 8. Git: No se puede ver la nueva rama remota
- 9. ¿Por qué no puede Git fusionar los cambios de archivos con un padre/maestro modificado?
- 10. ¿Cómo elimino una rama remota en Git?
- 11. Git: Lista de todos los cambios sin combinar en git
- 12. Git alias para eliminar la rama remota
- 13. Usando git-svn: Pull, Merge or Rebase?
- 14. git: ¿Cómo sobrescribo todos los cambios locales en la fusión?
- 15. Git: ¿Cómo puedo fusionar los cambios realizados entre dos etiquetas en otra rama?
- 16. Fusionar una rama git, mientras se excluyen los cambios en algún directorio
- 17. Git fusionar squash repetidamente
- 18. ¿Cómo puedo combinar de nuevo en la rama remota
- 19. Fusionar conflictos actualizando desde upstream
- 20. Git dice rama local está detrás de la rama remota, pero no es
- 21. Crear rama SVN desde etiqueta específica y fusionar a troncal
- 22. Mover cambios de una rama a otra sin fusionar
- 23. Git: la mejor manera de eliminar todos los cambios de un archivo determinado para una rama
- 24. ¿Cómo fusionar una rama a otra rama en GIT?
- 25. Git merge -s theirs: ¿Simplemente?
- 26. Git merge errors
- 27. Mercurial: ¿cómo fusionar los cambios en un archivo que se renombró en la otra rama?
- 28. Poner los cambios actuales en una nueva rama de Git
- 29. No se puede eliminar una rama remota creado involuntariamente
- 30. Git: ¿Cómo fusionar una rama pequeña pero muy antigua?
mejor (es decir, más simple) explicación de la rebase que he escuchado. aclamaciones. –
Las rebases son la forma en que los cambios deberían pasar desde la parte superior de la jerarquía hacia abajo y las fusiones son la forma en que fluyen hacia arriba. https://www.derekgourlay.com/blog/git-when-to-merge-vs-when-to-rebase/ – CrandellWS