无法添加“!”我的git提交消息中的符号

时间:2011-12-06 17:46:32

标签: git bash

  

可能重复:
  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符号吗?

是否有其他符号我不应该使用或应该以任何转义序列逃脱?

3 个答案:

答案 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 guigit commit,然后在打开的编辑器中指定消息。

限制显然是bash限制而不是git的问题。您可以使用单引号来避免它:

git commit -m 'First Commit!'