Mercurial - 如何在特定分支上找到第一个提交

时间:2015-05-15 11:25:50

标签: mercurial

我不想确定" foo"的年龄。科。据我所知,不可能直接得到这些信息。我试图编写命令,找到关于" foo"的第一次提交的信息。分支。

hg log -r "parents(min(branch(foo)))"

这个不完全归还我想要的东西。有人可以帮帮我吗?

2 个答案:

答案 0 :(得分:6)

我应该在没有parents的情况下编写它:

hg log -r "min(branch(foo))"

现在它做我需要的。

答案 1 :(得分:3)

这能满足您的需求吗?

hg log -r "branch(default) and 0:" -l 1 --template "{date|isodate}\n"

我认为这会为您提供指定分支上第一个变更集的日期。

所以,首先在分支“testbranch”

上进行变更
% hg log -r "branch(testbranch) and 0:" -l 1
changeset:   107:bd91c8e6fa5f
branch:      testbranch
user:        Nick Pierpoint
date:        Fri May 15 15:16:44 2015 +0100
summary:     test one

...添加template只是为了获取日期:

% hg log -r "branch(testbranch) and 0:" -l 1 --template "{date|isodate}\n"
2015-05-15 15:16 +0100

如果您始终想要返回单个变更集,则min也可以使用:

% hg log -r "min(branch(testbranch))"
changeset:   107:bd91c8e6fa5f
branch:      testbranch
user:        Nick Pierpoint <nick.pierpoint@uk.bp.com>
date:        Fri May 15 15:16:44 2015 +0100
summary:     test one