Estoy usando git bisect para encontrar una falla inducir compromiso. Sin embargo, muchas de las confirmaciones en el rango son definitivamente irrelevantes (porque se comprometen con la documentación o con las pruebas unitarias). Me gustaría hacer que git bisect salte automáticamente las confirmaciones que afectan los archivos en ciertos directorios. ¿Es esto posible de alguna manera?¿Cómo puedo cortar una ejecución de gisexto usando rutas de archivos?
Respuesta
tiene varias opciones aquí:
Ignorando específica compromete
git bisect
contiene funcionalidad de confirmaciones saltarse. Puede especificar las confirmaciones, las etiquetas, los intervalos que usted no desea probar congit bisect skip 0dae5f ff049ab ...
Sólo hacer esto antes de
git bisect run
, y debe saltar lo que ha especificado.carpetas Especificación con fuentes rotas
También puede reducir compromete
bisect
pruebas mediante la especificación de las carpetas que se debe buscar problemas en. Esto se hace al principio debisect
proceso por el supllying argumentos adicionales agit bisect start
(cita del manual estándar):git bisect start -- arch/i386 include/asm-i386
Bisecar sólo tendrá en cuenta confirmaciones que tocan las carpetas especificadas.
Si desea recopilar automáticamente se compromete a que tocan ciertos archivos o carpetas, puede utilizar git log
para eso. Por ejemplo, el siguiente comando dará comprometerse nombres que modifican los archivos en ciertas carpetas:
git log --pretty=format:%H tests/ docs/
Y usted puede suministrar el resultado de git bisect skip
con el uso de las capacidades de Shell:
git bisect skip `git log --pretty=format:%H tests/ docs/`
- 1. ¿Cómo puedo cortar y cortar rápidamente los archivos de datos grandes?
- 2. ¿Cómo puedo cortar una forma dentro de otra?
- 3. Backbone: ¿cómo puedo cortar una colección?
- 4. ¿Cómo puedo cortar una ArrayList de una ArrayList en Java?
- 5. ¿Cómo puedo instalar una jerarquía de archivos usando cmake?
- 6. ¿Cómo puedo cortar una subcadena de una cadena hasta el final usando Javascript?
- 7. Cómo cortar una cadena
- 8. Cómo manejar ~ en las rutas de archivos
- 9. Formateo de rutas de archivos
- 10. ¿Cómo puedo cortar una cadena cada 3 índices?
- 11. ¿Cómo establecer correctamente las rutas de ejecución, las rutas de búsqueda y los nombres de instalación?
- 12. cómo cortar columnas de csv
- 13. Codificación de rutas de archivos
- 14. ¿Puedo cortar una colección PL/SQL?
- 15. Usando Subversion, ¿cómo puedo cortar de un archivo y pegarlo a otro historial de preservación?
- 16. Cómo cortar una matriz de estructuras?
- 17. ¿Cómo puedo cortar (1) palabras en camello?
- 18. Manejando rutas de archivos multiplataforma
- 19. Usando imagemagick ¿cómo puedo cortar una imagen en varias imágenes separadas?
- 20. Cortar archivos al portapapeles en C#
- 21. ¿Cómo puedo comprimir archivos en Java y no incluir archivos de las rutas
- 22. Hacer manipulaciones de rutas de archivos en XSLT
- 23. rutas relativas de archivos en Perl
- 24. Cómo 'cortar' en nulo?
- 25. ¿Cómo puedo "cortar" parte de una cadena con una expresión regular?
- 26. cortar parte de una cadena
- 27. Cómo cortar NSMutableArray
- 28. Python - ¿Cómo cortar una cuerda en Python?
- 29. Cómo cortar varias columnas de varios archivos e imprimir la salida en diferentes archivos
- 30. ¿Cómo puedo usar rutas completas en git?
que sabía de la primera dos opciones ya, pero omitir manualmente los commits fue demasiado trabajo (hay cientos de ellos) y tampoco sé qué carpetas contienen las fuentes rotas. ¡La sugerencia de usar 'git log' es genial! Lamentablemente, estoy en Windows, por lo que las capacidades de shell no me funcionarán. Sin embargo, puedo construir fácilmente una línea de comando 'git bisect skip' apropiada a mano. ¡Gracias! –
@FrerichRaabe: ¿Qué, tu idiota no vino con una copia de bash? – SamB
hmmm agregando 2 carpetas a 'git bisect start' solo mira las confirmaciones que tocan AMBAS carpetas. ¿Hay alguna manera de ver los commits que tocan CUALQUIER carpeta? – EoghanM