【问题标题】:Ignore bash backtick execution without escaping the ` character in git commit [duplicate]忽略bash反引号执行而不转义git commit中的`字符[重复]
【发布时间】:2013-11-23 16:14:33
【问题描述】:

我经常在提交中使用反引号字符。我通常也使用git commit -m 提交

当我运行这样的命令时

git commit -m "add `foo`"

Bash 尝试执行 foo

我可以使用反斜杠\ 来转义反引号,但我希望有更好的解决方案来避免一直转义反引号。

【问题讨论】:

    标签: git bash


    【解决方案1】:

    使用单引号代替双引号。

    git commit -m 'add `foo`'
    

    变量、反引号和$(...) 用双引号展开,但不是单引号。

    Difference between single and double quotes in Bash

    【讨论】:

    • 你应该养成使用单引号的习惯,除了当你真正需要在引号内扩展时。
    • 这很酷,但对我没有帮助。我使用单引号,但是在我输入“enter”后会出现一些命令提示符 ("> ")。
    • 如果你有不平衡的报价会发生这种情况。
    【解决方案2】:

    shell中的后退标记被视为命令并被执行。如果命令不是有效的,它会留下一个空字符串。

    参考这篇很棒的帖子https://joelclermont.com/post/2021-02/backticks-in-git-commit-messages/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-21
      • 2021-09-24
      • 2020-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多