Изменение свойств узла SVN с Python вызывает SubversionException - PullRequest
0 голосов
/ 02 июня 2011

При изменении свойства узла svn с помощью python использование

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

вызывает исключение с сообщением «svn.core.SubversionException: (« Корневой объект должен быть корнем транзакции », 160022)»

root создается следующим образом:

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)

, а путь - это путь к каталогу, например, "proyect / a / directory"

Я не могу найти документацию по svnмодуль в Python, поэтому я не знаю, как решить эту проблему.

Можете ли вы помочь мне с этим?

Спасибо.

1 Ответ

0 голосов
/ 03 июня 2011

Я ошибся, используя root в качестве основной версии root.

Мне нужно было начать транзакцию для коммита и получить ее корень транзакции.

Для этого я сделал,

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

Надеюсь, это кому-нибудь поможет.

...