将subversion路径转换为walkable目录

时间:2013-01-03 19:31:21

标签: python

我有一个subversion repo,即“http:// crsvn / trunk / foo”...我想把这个目录或者简单地转到目录列表。

我们的想法是创建一个脚本,它将在“http:// crsvn / branches / bar”中的所有分支上执行mergeinfo,并将它们与trunk进行比较,以查看分支是否已合并。

所以我遇到的第一个问题是我不能走路或做

os.listdir('http://crsvn/branches/bar')

我得到的值标签语法不正确(提到URL)

2 个答案:

答案 0 :(得分:1)

您可以使用PySVN。特别是,pysvn.Client.list方法应该做你想要的:

import pysvn
svncl = pysvn.Client()
entries = svncl.list("http://rabbitvcs.googlecode.com/svn/trunk/")
# Gives you a list of directories:
dirs = (entry[0].repos_path for entry in entries if entry[0].kind == pysvn.node_kind.dir)
list(dirs)

无需结账。您甚至可以指定要处理的修订,以确保您的脚本在运行时可以忽略在存储库中工作的其他人。

答案 1 :(得分:0)

listdir采用路径而不是网址。如果python可以知道远程服务器上的结构会很好,但我不认为是这种情况。

如果您首先在本地签出您的存储库,您可以使用pythons函数轻松地遍历目录。