2

内部构建系统构建在分支上所做的每个提交。但是,在 Mercurial 中,要关闭一个分支,您必须进行“关闭提交”,触发该提交的构建。

这是一个问题,因为我们在不必要的构建上浪费了资源。

我们使用hglib来完成所有的 mercurial 代码。

(changeset.branch(), changeset.rev(), str(changeset)) in self.repo.Branches()

我试过这个命令,但这会忽略以前的提交,因为我知道它只是检查它是否作为 repo 中的一个分支存在。

有什么方法可以通过变更集或其他方式知道分支上的提交是否是“关闭提交”。

4

2 回答 2

2

最后,这就是我想要的:

self.Client.log(revrange="closed()")

这将返回:

[(revision, changeset, tag, branch name, 'username', description, date)]

这只是一个元组,因此:

如何在 Python 中搜索元组列表

于 2018-10-25T22:05:34.917 回答
1

close信息存储在变更集附加文件中。我不确定如何通过 hglib 访问它,但您可以通过模板化日志调用访问它hg log -r 2 -T "{extras|json}\n"::

{"branch": "branch", "close": "1", "topic": "laconic-kouprey"}

于 2018-10-25T08:20:17.120 回答