Yo y mi amigo bifurcación del repositorio principal (en sentido ascendente). Anoche, teníamos la misma versión de este repositorio en la máquina local. Luego agregué una nueva función y mi amigo también agregó otra característica nueva. Mi amigo retiró la solicitud al repositorio principal y fusioné esta solicitud de extracción con el repositorio en sentido ascendente sin conflicto. Y cuando recojo de la corriente ascendente y me fusiono con mi rama principal, entra en conflicto. ¿Qué debo hacer en esta situación para resolver un conflicto? (El repositorio ascendente debe tener 2 características nuevas después de resolver el conflicto)Combinar conflicto Git
Respuesta
Simplemente revise los archivos marcados como conflictivos por git status
y encuentre los marcadores de conflicto (puede buscar ====
en el archivo). Concilie los cambios entre ellos, descubra si algo inesperado se rompió con la combinación de su código, ejecute las pruebas y luego use git add
y git commit
de forma normal para hacer un commit que combine la nueva función de su amigo con la suya.
Upstream: original with friend's feature with both
\ \ / \ /
\ -- Friend's --/ \ /
\ \ /
---- Yours ------------------------- your merge
Puede escribir git difftool path/filename
en la consola para utilizar una herramienta para resolver el conflicto o utilizar el software de Git que ha resolución de conflictos incorporado. Me gusta mucho SmartGit (de los creadores de SmartSVN) y TortoiseGit (muy similar a TortoiseSVN).
Tenga en cuenta que también se puede resolver directamente un conflicto de combinación de Eclipse/Egit sí:
Ver "Egit: Solving Merge Conflicts":
Puede editar manualmente el texto en el lado izquierdo o utilice el cambio actual de copia de botón de derecha a izquierda para copiar los cambios en conflicto de derecha a izquierda.
El siguiente paso es desde el menú contextual del archivo, para seleccionar Equipo -> Agregar al índice. Que comprometerse
Vea también http://stackoverflow.com/questions/11674950/how-to-do-an-ours-merge-using-the-eclipse-git-merge-tool como un ejemplo del uso de esa herramienta. – VonC
- 1. Combinar conflicto en .gitignore
- 2. Git caminos sin combinar
- 3. conflicto Git marcadores
- 4. Resolviendo conflicto en git
- 5. Resolver "CONFLICTO (eliminar/modificar)" en git
- 6. Git: fusionar conflicto y cometer mensaje
- 7. ¿Cómo puedo resolver este conflicto de git?
- 8. Cambiar los marcadores de conflicto de git
- 9. fallo de inserción de git sin conflicto
- 10. ¿Cómo resolver un conflicto con git-svn?
- 11. `git stash` durante un conflicto de combinación
- 12. CONFLICTO (contenido): Conflicto de combinación en
- 13. Git cereza-escoge vs flujo de trabajo Combinar
- 14. Git: Lista de todos los cambios sin combinar en git
- 15. Comprender Meld Combinar 3 vías con Git
- 16. Combinar/rebase una rama 'desconectada' en Git
- 17. Usando git, ¿cómo hacer 'usar el suyo' durante un conflicto?
- 18. Cómo resolver "borrar/modificar" conflicto causado por "escondite git aplica"
- 19. Resolviendo un conflicto de fusión "ambos agregados" en git?
- 20. ¿Cómo resuelvo un conflicto después de la extracción de git?
- 21. Git conflicto de rebase con nada para fusionar?
- 22. git svn rebase está fallando con un conflicto en un archivo que no existe en git
- 23. ¿Puede aplicar git dejar marcadores de conflicto en línea como git rebase?
- 24. informes de git fusionar el conflicto sin cambios, líneas vacías (usando git-subárbol)
- 25. ¿Por qué git no intenta combinar los cambios en los archivos renombrados?
- 26. Git: Combinar edad comprometerse en la versión actual jefe
- 27. ¿Cómo puedo reordenar/combinar confirmaciones usando Git rebase?
- 28. git checkout y combinar sin tocar árbol de trabajo
- 29. ¿Cómo combinar todos los archivos manualmente en Git?
- 30. ¿Cómo combinar código y resolver conflictos más fácilmente usando git?
Gracias, la información es realmente útil. –