0

我正在尝试在 Windows 上创建一个用于颠覆的钩子脚本,我有一个调用我的 python 脚本的 bat 文件,但获取日志/评论似乎超出了我的范围。

我已经安装了 pysvn,并且可以像这样获得交易:

 repos_path = sys.argv[1]
 transaction_name = sys.argv[2]
 transaction = pysvn.Transaction( repos_path, transaction_name)

我还可以列出发生了什么变化:

transaction.changed(0)

我无法弄清楚如何获取交易的日志/评论。我意识到在 pysvn 中有一个类似的命令:

transaction.propget(propname,path)

但不能为我的生活得到它回报任何东西。我假设 propname 应该是“svn:log”,对于路径我已经尝试过字段名称、repo 路径、null 但所有 get 都是错误。

在一天结束时,我需要验证评论,将匹配将演变的外部数据,因此我想在 python 而不是 bat 文件中执行此操作,而且它可能稍后会移动到 linux 服务器。

我错过了一些明显的东西吗?如何将日志/评论作为字符串获取?

谢谢,克里斯。

4

1 回答 1

1

经过一天的挫折后大量的反复试验和更好的搜索,我发现我需要使用修订属性,而不是直接属性,对于给定的交易,这将返回用户提交的评论:

transaction.revpropget("svn:log")

还有其他有用的属性,这将返回所有修订属性的列表:

transaction.revproplist()

例如:

{'svn:log': 'qqqqqqq', 'svn:txn-client-compat-version': '1.9.7', 'svn:txn-user-agent': 'SVN/1.9.7 (x64-microsoft-windows) TortoiseSVN-1.9.7.27907', 'svn:author': 'harry', 'svn:date': '2017-12-14T16:13:52.361605Z'}
于 2017-12-14T16:16:53.127 回答