0

我正在尝试使用 pysvn 来获取 svn 系统中文件的创建和最后修改版本(以及最重要的日期)...

我正在努力解决的典型文件历史记录如下所示:

在此处输入图像描述

我正在使用 pysvn,但我不能很好地理解文档。到目前为止,我要么设法获得分支日期/修订版或最后一次修改根......我想要的是获得真正的创建日期(无论它是在根还是分支中)和最后修改日期,不包括分支如果自分支创建以来,分支中没有任何修改。

如果有人可以为此提供帮助,请提前感谢,我不想在脚本的这个特定部分上花费太多时间... :)

马努

(顺便说一句,我正在使用一个现有的简单算法,它试图使用二分法查找创建日期,给定最小和最大修订来检查,检查是否可以递归地在给定修订中找到文件,直到最早......对不起那不是 -非常英语的解释!)

(编辑:当然,目前,分支和根还没有合并^^否则我可能不会为分支修订而挣扎,而只是将合并修订作为最后一次修改)

4

1 回答 1

0

pysvn.Client().log() 将返回您可以分析的提交信息。

您感兴趣的是可选的 changed_pa​​ths 信息,请确保您设置 discover_changed_pa​​ths=True 以返回此信息。

这将向您显示何时将文件添加到存储库中,这是您的创建日期事件。当文件被修改时,这是您的修改日期。

您可能还必须弄清楚一个文件已被重命名,这看起来像是一个删除原始文件并添加另一个文件的提交。

你也可以通过查看copyfrom_path和copyfrom_revision的值来找出分支关系。

于 2017-03-20T19:48:59.980 回答