2

我制作了一个 python 模块文件并上传到 SVN Repo(比如 string_utl.py ,它执行字符串相关操作)。无论如何,我可以访问 SVN 的文件 Direclty。虽然我从 SVN 本地签出文件到我的计算机并从那里访问它。但这不是重点。我正在考虑一个本地存储库,我的所有同事都可以访问和修改代码。我虽然在 sys.path 列表中添加了 Lsvn 位置,但它没有用。

我这样做了 sys.path.append ("http://lsvn/svn/lsvn/QRM_Helper/Helpful_Script/");

但没有奏效。

我尝试了另一种方式,例如 urllib.urlopen(some_url),因为我使用的是 Python 3,它说要使用 urllib2.urlopen() 但在我的情况下它也没有工作。它给出了该模块不存在的以下错误。

4

4 回答 4

2

只需安装pysvn 模块,然后使用普通的 SVN 签出、更新、提交等。

您无法直接访问 SVN 后端数据存储,因此请不要尝试。

于 2011-02-17T06:14:11.183 回答
2

如果您使用的是python3,则url处理代码是urllib.request.urlopen(顺便说一句,它不应该说使用urllib2.urlopen)。sys.path.append仅采用本地系统路径。它不能接受网址。您可以将模块签出到本地系统并指向该路径。pysvn似乎是一种使用 python 以编程方式执行 svn 操作的方法,但是在您签出代码之后,您应该通过本地文件系统路径直接引用代码所在的位置并将其添加到 sys.path。

于 2011-02-17T06:20:34.987 回答
0

pip install -e svn+http://lsvn/svn/lsvn/QRM_Helper/Helpful_Script/#egg=local-name

将创建一个结帐它(进入local-name/)并将链接安装到您的 Python 中,这样导入就可以正常工作,并且svn update也可以正常工作 - 无需重新安装。警告:不知道这是否适用于 Windows。哦,你需要一个 setup.py 文件才能让它工作。

这不会每次都拉模块;您可以使用 pysvn 或只运行svn update. 但是,如果您有多个依赖项,使用 Pip 安装它们将节省您的理智 :)。

于 2011-02-17T18:13:45.160 回答
0

我刚得到答案。我将使用 Pysvn 将 repo 签出到本地文件夹。我会将文件夹添加到 sys.path 列表中。使用它我可以访问文件夹模块。感谢大家帮助我

但是我有一个小问题......我的办公室计算机中没有管理员权限(我正在使用 Windows)所以我在我的笔记本电脑中安装了 pysvn 并将 lib 文件从我的笔记本电脑复制到我的办公室电脑。 .虽然我可以在我的电脑(Office comp)中进行pysvn。但是当我访问Pysvn时,Python无缘无故崩溃了。复制粘贴可能是原因。

于 2011-02-18T04:50:02.787 回答