好吧,我有一个运行在macosx上的python脚本,现在我需要修改它以支持在指定时间内更新SVN工作副本。但是,在学习之后,我发现SVN命令只支持将工作副本更新为指定的版本。在
所以我写了一个函数,从命令svn logxxx中获取信息,找到指定时间对应的版本。我的解决方案是:
process=os.popen('svn log XXX')
print process.readline()
print process.readline()
process.close()
为了使问题简单化,我只打印输出中的前2行。但是,当我执行脚本时,我收到了错误消息:svn:Write error:brokend pipe
我想我得到这个消息的原因是在我关闭Popen时svn命令一直在执行。所以错误信息出现了。在
有谁能帮我解决这个问题吗?或者给我另一个解决方案来达到目标。谢谢!在
请使用pysvn。它很容易使用。或使用子流程。在
如果最终执行以下操作,是否仍会出错:
如果使用os.popen公司或子流程。在
我每次使用
svn log | head
时也会遇到这个错误,它不是Python特有的。尝试类似于:取消
^{pr2}$stderr
。你也可以用相关问题 更多 >
编程相关推荐