如何使用“冒号斜线”修订简表并仍然引用提交的父级?

时间:2016-04-29 20:42:22

标签: git

假设我想引用最新提交的父级,其提交消息包含'foo'。

HEAD^{/foo}^将完成这项工作 这可以稍微缩短到@^{/foo}^(我认为)。

<rev>^{/<text>}构造有一种简化形式::/<text>

有没有办法使用短格式并仍然引用生成的提交的父级?

1 个答案:

答案 0 :(得分:5)

git rev-parse command之后,您可以将其中两个组合起来,以获取其消息与正则表达式匹配的提交的父级。

在git bash中输入:

git rev-parse $(git rev-parse :/<text>)^

两个命令

  • 首先使用正确的消息获取提交:git rev-parse :/<text>
  • 然后获取其父git rev-parse $(...)^

$()将执行第一个命令git rev-parse并将其结果提供给第二个命令git rev-parse

这将使您获得提交的父级,并提交与<text>匹配的提交消息。

这与仅使用一个命令:

不同
git rev-parse HEAD^{/<text>}^

或者在Windows CMD中:

git rev-parse "@^{/<text>}^"
# or, more complex, as ^ is the windows escape sign:
git rev-parse ^@^^{/<text>}^^