¿Todos los comandos de git tienen una opción de ejecución directa, o una que indique lo que haría el comando sin realmente hacerlos?¿Todos los comandos de git tienen una opción de ejecución en seco?
Respuesta
No todos los comandos apoyarían naturalmente una carrera en seco directamente.
- git merge tiene its own option (
git merge --no-commit --no-ff
) - pero git pull does not really need it ('
git fetch origin
', entonces un 'git log master..origin/master
', antes de que ungit merge origin/master
)
(perogit push
tiene una opción de funcionamiento en seco)
Como J.C. Hamano summarizes:
Hay cosas que no se implementan en git porque no tienen sentido , y hay cosas que no se implementan en git porque nadie tuvo comezón por arañar.
Para decirlo de otra manera, tendemos a implementar solo cosas que son reales, necesidades demostradas del mundo real y solo cuando la adición tiene sentido como una parte coherente del sistema.
iboisver comentarios:
Otra cosa a tener en cuenta es que los comandos como
git add
ygit rm
permiten la opción-n
de línea de comandos para especificar el funcionamiento en seco, mientras que engit commit
, la La opción-n
significa algo completamente diferente.
Así que asegúrese de revisar la página del manual
git commit -n
:
-n
--no-verify
Esta opción no pasa por los ganchos pre-comprometerse y comprometer-MSG. Vea también githooks(5).
Aunque no siempre hay una bandera --dry-run
para cada comentario, generalmente hay equivalentes. Por ejemplo, this previous question muestra qué hacer para git merge
.
no hay ninguno para 'rebase', por ejemplo. – gcb
- 1. - opción de ejecución antigua en git checkout
- 2. flujo de trabajo de git: ¿todos tienen una sucursal o todos tienen un maestro?
- 3. git lista todos los comandos disponibles
- 4. ¿Es posible que todos los comandos "git diff" usen la "diferencia de Python" en todos los proyectos de git? Cuando
- 5. ¿TODOS los dispositivos Android tienen una tarjeta SD interna?
- 6. Git: Lista de todos los cambios sin combinar en git
- 7. Obtener una lista de todos los empujes con Git
- 8. Ejecución de comandos de git a través de PHP
- 9. ¿Cómo puedo ignorar todos los archivos excepto los que tienen cierta extensión en git?
- 10. Eliminar e ignorar todos los archivos que tienen una extensión desde un repositorio git
- 11. Hacer recursivo en seco
- 12. ¿Todos los dominios tienen direcciones IP únicas?
- 13. Aplicando una opción a todos los archivos abiertos en Vim
- 14. Configuración de indicadores predeterminados de git en los comandos
- 15. tienen una URL que acepta todos los caracteres
- 16. ¿Cómo ver el registro de todos los comandos?
- 17. tienen que determinar todos los directorios principales de los usuarios - un problema de secuencias de comandos de tilde
- 18. Ejecuta dos comandos durante la ejecución de git bisect
- 19. Git buscar todos los diffs
- 20. ¿Cuáles son los comandos destructivos en git?
- 21. ¿Pueden los comandos de ejecución de Powershell en paralelo?
- 22. ¿Cómo alias los comandos en git?
- 23. Compruebe si todos los artículos tienen la misma clase
- 24. la búsqueda de todos los usuarios que tienen nombres duplicados
- 25. Desescalonar todos los archivos eliminados en Git
- 26. Ejecución de una secuencia de comandos groovy en eclipse
- 27. Git: descartar todos los cambios en una rama local divergente
- 28. ¿Por qué la biblioteca de tiempo de ejecución es una opción de compilación en lugar de una opción de enlazador?
- 29. chmod: ¿Cómo añadir recursivamente los permisos de ejecución sólo a los archivos que ya tienen permiso de ejecución
- 30. ¿Todos los perfiladores reducen significativamente la ejecución?
Otra cosa a tener en cuenta es que los comandos como 'git-add' y' git-rm' permiten que la opción _-n_ de la línea de comando especifique la ejecución en seco, mientras que en 'git-commit', la opción _-n_ significa algo completamente diferente. Así que asegúrese de consultar la página de manual. – iboisver
@iboisver comentarios interesantes, gracias. He incluido su comentario en la respuesta para una mayor visibilidad. – VonC