He leído varias cosas sobre la función nueva de git, y estoy considerando habilitarlo. Pero no he visto a nadie mencionar posibles problemas que puedan surgir al usarlo. Tengo que asumir que hay una desventaja, o que probablemente esté habilitada por defecto. Entonces, ¿hay alguna desventaja para habilitar el rerere? ¿Qué problemas potenciales puede causar que de otro modo no ocurrirían?¿Hay algún inconveniente para habilitar git rerere?
Respuesta
Si realiza una combinación incorrecta, luego deséchela, luego realice la "misma" combinación nuevamente, será incorrecta nuevamente. Sin embargo, puedes olvidar una resolución grabada. De the documentation:
git rerere forget <pathspec>
Esto restablece las resoluciones de conflicto que rerere ha grabado para el conflicto actual en
<pathspec>
.
Tenga cuidado de usarlo en rutas específicas; no desea deshacerse de todas sus resoluciones grabadas en todas partes. (forget
sin argumentos ha sido deprecated para salvarte de hacer esto, a menos que escriba git rerere forget .
para solicitar explícitamente.)
Pero si usted no cree que para hacer eso, aquí se puede llegar a ponerse de combinación incorrecta de que en su historia ...
Esta es la razón por la que 'rerere' aún deja los archivos con conflictos marcados como no fusionados, por lo que debe agregarlos manualmente (con suerte después de inspeccionarlos/probarlos) antes de confirmarlos. Siempre puedes usar 'git checkout -m
Sigo pensando que el comando debería ser 'git forere'. – MatrixFrog
¡Eso tendría sentido! Parece que necesitas un nuevo alias. – Cascabel
Como J. C. Hamano menciona en su artículo "Fun with rerere"
- rerere recuerda cómo se eligió para resolver las regiones en conflicto;
- Rerere también recuerda cómo retocó fuera de las regiones en conflicto para ajustarse a los cambios semánticos;
- Rerere puede reutilizar la resolución anterior aunque haya estado fusionando dos ramas con contenidos diferentes a la que resolvió anteriormente.
Incluso las personas que han estado utilizando rerere durante mucho tiempo a menudo no se dan cuenta del último punto.
Si activa rerere
en un contenido demasiado amplio, puede terminar con una resolución de fusión sorprendente o confusa debido al último punto.
Los tíos en conflicto todavía tienen que coincidir; es bastante difícil dar un falso positivo. – Cascabel
Tengo acceso global habilitado. Realmente no he notado ningún problema, y por lo general parece que me hace la vida más fácil.
Lo mismo aquí. No hay problemas en más de 2 años de uso. –
I cherry eligió una confirmación (en gitk) que solo contenía un archivo binario. Cherrypick falló debido a un conflicto (lo que de por sí es natural) y resolví el conflicto manteniendo la elección perfecta. Más tarde me sorprendí al encontrar en otra rama rebasada que mis dlls no se comportaban, solo para descubrir que no eran llevados a la base de datos como (especulo) resolución automática de conflictos. Así que este es el único caso que encontré (tener habilitado nuevamente) de ejecutar en contra intuitivo (aunque estoy seguro de que es perfectamente consistente) el comportamiento.
Cure: 'git rerere forget path/to/compiled/bin.dll' –
En el caso original, tuve el conflicto no en la selección de cereza sino en el rebase pero no creo que haga la diferencia –
- 1. ¿Hay algún inconveniente con ConcurrentHashMap?
- 2. ¿Hay algún inconveniente obvio para usar un intercambio sin asignación?
- 3. ¿JMockit tiene algún inconveniente?
- 4. Mercurial (y supongo que Git) con Dropbox: ¿algún inconveniente?
- 5. ¿Hay algún beneficio o inconveniente cuando un constructor implementa otro?
- 6. ¿Hay algún inconveniente en agregar numerosos índices a las tablas?
- 7. ¿Hay algún inconveniente de "seguimiento asíncrono" con Google Analytics?
- 8. ¿Hay algún comando para deshacer git init?
- 9. ¿Hay algún gancho git para tirar?
- 10. git workflow: fusiona y git-rerere - ¿Cuál es el punto?
- 11. ¿Hay algún inconveniente para confiar en la función System.Guid.NewGuid() al buscar ID únicos para los datos?
- 12. ¿Hay algún "inconveniente" con este enfoque para manejar errores en PHP?
- 13. ¿Hay algún inconveniente al utilizar un tipo de retorno IEnumerable <T> para datos SQL?
- 14. ¿Hay algún repositorio GIT de prueba disponible?
- 15. ¿Hay algún servicio SVN-> GIT sincronizado?
- 16. ¿hay algún complemento para usar git en gedit en ubuntu?
- 17. ¿Hay algún inconveniente en agregar un delegado vacío anónimo en la declaración de evento?
- 18. ¿Hay algún inconveniente en el uso de funciones anónimas en JavaScript? P.ej. ¿uso de memoria?
- 19. ¿Hay algún inconveniente en dejar los símbolos de depuración en versiones de lanzamiento?
- 20. Git gancho: habilitar eco comandos
- 21. ¿Hay algún inconveniente en el uso de barras diagonales dobles en las URL?
- 22. ¿Hay algún inconveniente en incluir la biblioteca jquery en mi página?
- 23. ¿Algún inconveniente para esta solución de sprite de CSS para pantallas 'retina'?
- 24. ¿Hay algún libtorrent para C#?
- 25. ¿Hay algún límite para setTimeout?
- 26. ¿Tengo que comprometer una fusión para hacer que git-rerere grabe mi resolución de conflicto?
- 27. ¿Hay algún inconveniente para establecer ClientIDMode = Static en cada objeto (establecido en el contenido principal de la página maestra)
- 28. ¿Hay algún cliente github para Windows
- 29. ¿Tiene algún inconveniente para almacenar un número entero como una cadena en una base de datos?
- 30. ¿Hay algún daño al dejar que una rama git "envejezca"?
Cuando [la actualización automática está habilitada] (http://chuva-inc.com/blog/2012/09/fast-tip-enable-git-rerere-right-now) y aplica una resolución previa, ¿lo hace? mostrar un mensaje? Si es asi, ¿como se ve? TIA! – joeytwiddle