级别: 初级
作者:elprup
2009 年 9 月 25 日
esvn和问题介绍
esvn是linux下版本控制程序的客户端。和其类似的svn客户端,windows上就是大名鼎鼎的tortoiseSVN。初用SVN的人可能会很疑惑,esvn对于svn的本地文件夹,会自动设置为只读,用户自然想到了在esvn的空白处点击add按钮添加,然而,这时候,系统会提示一个莫名其妙的错误:
svn: "."不是工作副本
svn: 不能打开文件“.svn/entries”:没有该文件或目录
error(1)
问题分析
这个问题确实和软件设计有关。svn的一般过程是从svn服务器下载最新版本的文件,而不是从本地把文件上传上去。在上传时,svn软件默认用户已经把要上传的软件传到了本地的svn文件夹,所以这里的add用来浏览本地文件夹中的文件,给它填上svn表示。而不是从非本地文件夹中读取文件,拷贝到svn上。所以,正确的做法应该是
1. 先把需要上传到svn上的文件copy到svn本地文件夹
2. 打开esvn,找到本地文件夹中新copy到这里的文件,并add。
3. 用esvn进行commit。
结束语
esvn把本地文件夹设置成只读确实很诡异,这也算是一个bug吧。所以我建议使用rapidSVN,本地的文件夹不会设为只读,而且用起来也很方便。
作者:elprup
2009 年 9 月 25 日
esvn和问题介绍
esvn是linux下版本控制程序的客户端。和其类似的svn客户端,windows上就是大名鼎鼎的tortoiseSVN。初用SVN的人可能会很疑惑,esvn对于svn的本地文件夹,会自动设置为只读,用户自然想到了在esvn的空白处点击add按钮添加,然而,这时候,系统会提示一个莫名其妙的错误:
svn: "."不是工作副本
svn: 不能打开文件“.svn/entries”:没有该文件或目录
error(1)
问题分析
这个问题确实和软件设计有关。svn的一般过程是从svn服务器下载最新版本的文件,而不是从本地把文件上传上去。在上传时,svn软件默认用户已经把要上传的软件传到了本地的svn文件夹,所以这里的add用来浏览本地文件夹中的文件,给它填上svn表示。而不是从非本地文件夹中读取文件,拷贝到svn上。所以,正确的做法应该是
1. 先把需要上传到svn上的文件copy到svn本地文件夹
2. 打开esvn,找到本地文件夹中新copy到这里的文件,并add。
3. 用esvn进行commit。
结束语
esvn把本地文件夹设置成只读确实很诡异,这也算是一个bug吧。所以我建议使用rapidSVN,本地的文件夹不会设为只读,而且用起来也很方便。