Como insiro um ponto de exclamação em uma mensagem de confirmação do Git na linha de comando?
É possível escapar do ponto de exclamação com uma barra invertida, mas a barra invertida também termina na mensagem de confirmação.
Eu quero algo como isto:
git commit -am "Nailed it!"
Respostas:
Use aspas simples em vez de aspas duplas
Como alternativa, se você precisar usar aspas duplas por qualquer motivo, mas ainda assim desejar um literal
!
, desative a expansão do histórico na parte superior do seu script viaset +H
fonte
git commit -am "$FOO: Nailed it"'!'
git commit
(no -m) para abrir um editor de texto para a minha mensagem.git commit -m "This is the best code ever"!
o descrito na resposta de @Ryan H..Outra maneira de resolver isso é adicionar um espaço depois ! gostar:
Observe o espaço entre ! e o último " .
(O espaço não será incluído na mensagem de confirmação - o Git corta o espaço em branco à direita das mensagens de confirmação automaticamente.)
fonte
git commit -m "$(sillyname) $(buzzphrase). $(superb)! "
:)Não é necessário lembrar que aspas ou escapes usar;
Ctr
X
E
»abrirá o seu" editor externo ".… O comando será executado e quaisquer caracteres especiais aparecerão corretamente na mensagem de confirmação do Git!
(NB muitos outros usos: digitando comandos complexos, adicionando quebras de linha na sua mensagem de confirmação etc.)
fonte
Se você precisar usar aspas duplas e esse
!
for o último caractere da mensagem, mantenha o!
lado de fora das aspas , pois estamos usando apenas aspas para que os espaços sejam incluídos na mensagem.Se você precisar incluir uma
!
sequência intermediária, poderá usar aspas simples, mas se precisar usar uma aspas simples literal, será necessário fechar sua cotação e colocar a parte'
externa da sequência, escapando-a. Então, digamos que sua mensagem sejaI don't like it! Reverting again!
, ela pode ser composta com'I don'
+\'
+'t like it! Reverting again!'
Qualquer coisa mais complicada do que isso, provavelmente você está melhor
git commit
e permite que o git invoque seu editor de texto padrão :)fonte
Você também pode digitar:
Então, basta pressionar enter e colocar o ponto de exclamação em uma nova linha e fechar a mensagem de confirmação. Descobri esse por acidente um dia.
fonte
Hmm. Escapá-lo com uma barra não aparece na mensagem de confirmação para mim.
fonte