0

使用 python 更改 svn 节点属性时,使用

svn.fs.change_node_prop(root, path, "thisisa:property", "andthisisavalue") 

引发异常消息“svn.core.SubversionException: ('Root object must be a transaction root', 160022)”

根是用这个制作的:

canon_path = svn.core.svn_path_canonicalize(repos_path)
repos_ptr = svn.repos.open(canon_path)
fsob = svn.repos.fs(repos_ptr)
headrev = svn.fs.youngest_rev(fsob)
root = svn.fs.revision_root(fsob, headrev)

path 是目录路径,如“proyect/a/directory”

我在 python 中找不到关于 svn 模块的文档,所以我不知道如何解决这个问题。

你能帮我解决这个问题吗?

谢谢你。

4

1 回答 1

0

我错误地使用 root 作为头部修订根。

我需要开始提交事务并获取它的事务根。

为此,我做了,

txn = svn.repos.fs_begin_txn_for_commit(repos_ptr, headrev, SVN_COMMIT_USER, SVN_COMMIT_MESSAGE)
root = svn.fs.txn_root(txn)

希望这对任何人都有帮助。

于 2011-06-03T12:46:23.140 回答