可能重复:
How do I enter an exclamation point into a git commit message from the command line?
我是git的新手,我做了这个命令:
git commit -m "First Commit!"
这会引发如下错误:
bash: !": event not found
为什么会发生这种错误?就是在Git中,我不应该在!
中使用commit
符号吗?
是否有其他符号我不应该使用或应该以任何转义序列逃脱?
答案 0 :(得分:29)
与git无关,更多与bash有关 - 逃避!
或使用单引号,即
$ git commit -m "First Commit\!"
或者,更好:
$ git commit -m 'First Commit!'
答案 1 :(得分:10)
这根本不是git相关的,但与bash有关。用!在字符串中将导致bash尝试历史扩展。如果您不想这样,请使用单引号字符串或使用反斜杠转义感叹号。
答案 2 :(得分:4)
不,这可以使用git命令行和双引号。一个简单的解决方法是在!
之后添加一个空格。
git commit -m "First Commit! "
解决此问题的另一种方法是使用git gui
或git commit
,然后在打开的编辑器中指定消息。
限制显然是bash限制而不是git的问题。您可以使用单引号来避免它:
git commit -m 'First Commit!'