¿Cómo ingreso un signo de exclamación en un mensaje de confirmación de Git desde la línea de comando?
Es posible escapar del signo de exclamación con una barra diagonal inversa, pero luego la barra diagonal inversa también termina en el mensaje de confirmación.
Quiero algo como esto:
git commit -am "Nailed it!"
Respuestas:
Use comillas simples en lugar de comillas dobles
Alternativamente, si necesita usar comillas dobles por cualquier razón, pero aún quiere un literal
!
, apague la expansión del historial en la parte superior de su script a través deset +H
fuente
git commit -am "$FOO: Nailed it"'!'
git commit
(no -m) para abrir un editor de texto para mi mensaje.git commit -m "This is the best code ever"!
como se describe en @Ryan H. answer.¡Otra forma de resolver eso es agregar un espacio después ! me gusta:
Tenga en cuenta el espacio entre ! y el último " .
(El espacio no se incluirá en el mensaje de confirmación: Git recorta los espacios en blanco finales de los mensajes de confirmación automáticamente).
fuente
git commit -m "$(sillyname) $(buzzphrase). $(superb)! "
:)No es necesario recordar qué citas o escapes usar, en su lugar
Ctr
X
E
»abrirá su" editor externo ".... el comando se ejecutará y cualquier carácter especial se mostrará correctamente en el mensaje de confirmación de Git.
(Nota: muchos otros usos: escribir comandos complejos, agregar saltos de línea en su mensaje de confirmación, etc.)
fuente
Si necesita usar comillas dobles y
!
es el último carácter en el mensaje, simplemente mantenga el!
exterior de las comillas , ya que solo usamos comillas para que los espacios se incluyan en el mensaje.Si necesita incluir una
!
cadena intermedia, puede usar comillas simples, pero si necesita usar una comilla simple literal, deberá cerrar su cita, luego colocar el'
exterior de la cadena escapándola. Entonces, digamos que su mensaje esI don't like it! Reverting again!
, esto puede estar compuesto con'I don'
+\'
+'t like it! Reverting again!'
Algo más complicado que esto, probablemente estés mejor
git commit
y dejes que git invoque tu editor de texto predeterminado :)fuente
También puedes escribir:
Tan solo presione enter y coloque el signo de exclamación en una nueva línea, luego cierre el mensaje de confirmación. Lo encontré por accidente un día.
fuente
Hmm Escaparlo con una barra diagonal no aparece en el mensaje de confirmación para mí.
fuente