Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python pysvn.ClientError:WC被sqlite锁定,尝试在第二次签出时将只读数据库写入同一目录_Python_Linux_Svn_Pysvn - Fatal编程技术网

Python pysvn.ClientError:WC被sqlite锁定,尝试在第二次签出时将只读数据库写入同一目录

Python pysvn.ClientError:WC被sqlite锁定,尝试在第二次签出时将只读数据库写入同一目录,python,linux,svn,pysvn,Python,Linux,Svn,Pysvn,我尝试使用临时目录重复签出和删除,如下所示: client=pysvn.client() url=“…” path=“\tmp\temp\u dir” client.checkout(url,路径)#这里没问题 #清除dir并再次签出 shutil.rmtree(路径) os.makedirs(路径)#在这里之前可以 断言非os.listdir(路径) client.checkout(url,路径)#异常! 在最后一行excute中,它引发了一个异常pysvn.ClientError:Work

我尝试使用临时目录重复签出和删除,如下所示:

client=pysvn.client()
url=“…”
path=“\tmp\temp\u dir”
client.checkout(url,路径)#这里没问题
#清除dir并再次签出
shutil.rmtree(路径)
os.makedirs(路径)#在这里之前可以
断言非os.listdir(路径)
client.checkout(url,路径)#异常!
在最后一行excute中,它引发了一个异常pysvn.ClientError:Working copy'/tmp/temp_dir'锁定,并出现其他错误:sqlite[S8]:尝试写入只读数据库

我试着用
svn checkou
在终端结账,效果很好。但即使在我删除了由命令行签出的文件之后,我仍然无法在代码中通过pysvn进行签出,但有相同的异常

一些补充资料:

  • 我在linux上使用python3.4和pysvn1.8.0
  • 在Windows上使用python3.5和Pysvn1.9.9不会引发同样的问题
有人能帮我解决这个问题吗


我通过获得一个新的
pysvn.Client
实例解决了这个问题。换句话说,通过使用以下代码:


client = pysvn.Client()
client.checkout(url, path)   # it's ok here

# clear dir and checkout again
shutil.rmtree(path)
os.makedirs(path) # ok until here
assert not os.listdir(path)

client = pysvn.Client()     # obtain another instance
client.checkout(url, path)  # ok
似乎有一些缓存在
pysvn.Client
实例中的信息阻止了我再次签出,但我不知道为什么