通过命令行在 Git 提交消息中使用撇号(单引号)

我正在尝试将 这个进一步发展,这在标准的 Bash shell 中是如何工作的呢?

git commit -m 'cracked enigma's code'

这可以像下面这样简单地使用反斜杠转义吗?

git commit -m 'cracked enigma\'s code'

此外,如何使用双引号?也是通过反斜杠转义吗?这是最好的办法吗?有什么好的替代方法吗?

git commit -m 'cracked the "real" enigma's code'
44676 次浏览

如果您的提交是双引号的,则不需要转义 '字符。

git commit -m "cracked enigma's code"

EDIT : 无论如何,当您有一些特殊字符要添加到提交消息中时,我更喜欢在编辑器(如 nano 或 vim)中编辑,不使用 -m选项进行提交。

git commit

然后放上信息,然后退出。这样更舒服,而不是考虑如何避免所有的引号和双引号。

使用双引号:

git commit -m "cracked enigma's code"

或者,如果您的邮件包含其他特殊字符,则只对单引号使用双引号或反斜杠:

git commit -m 'cracked $enigma'"'"'s code'
git commit -m 'cracked $enigma'\''s code'