Git中是否可能存在特殊字符?

13

我非常高兴地解决了我Rails代码中的愚蠢 bug,然后在终端中兴高采烈地键入以下内容:

git add .
git commit -am "Finally fixed that difficult bug!"

仅仅发现git不支持“!”符号。有没有办法让我将其放入提交信息中?


假设您不是在创建新文件,则不需要同时使用“git add”和“commit -a”。 - Robert
我不确定Git是否也欣赏f*cking :-) - Tim Biegeleisen
可能是重复的问题:如何在单引号字符串中转义单引号? - Kcvin
我投了那个选项,因为虽然它们不是完全相同的问题,但这个问题也被关闭了:https://dev59.com/T2Qo5IYBdhLWcg3wdPO8 - Kcvin
这个回答解决了你的问题吗?如何在Linux上传递带有感叹号的参数? - undefined
2个回答

30

使用单引号。我不知道为什么双引号无法工作。实际上,这是与您的shell有关而不是git,在bash中涉及命令历史。

您还可以省略'm'选项并在编辑器中输入提交消息。这样,您就永远不必担心转义的问题。


3
双引号允许大多数扩展,其目的是将它们组合成一个单一的参数。 - Matthew Flaschen
当我使用单引号时,我能够使用感叹号。我不认为这在一行中是可能的,但这绝对回答了这个问题。 - hwrdprkns

14

1
我已经这样做了——但是似乎git也转义了反斜杠:(。所以我最终得到了一个提交信息“Removing stupid stuff! ”。 - hwrdprkns
请使用反斜杠(\)或单引号来转义文本。 - aggregate1166877

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接