服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

tortoisesvn从1.2.6升级到1.3.2过程中遇到的问题

昨晚浏览tigris.org的网站,发现tortoisesvn已经升级到1.3.2,遂下载了windows安装版,准备对使用中的1.2.6版进行升级。不知道sourceforge.net这一段时间是怎么回事,访问了多次才下载回来,所以想下载的朋友一定要有耐性。

在升级安装过程的过程中,当出现如下对话框时
tortoisesvn从1.2.6升级到1.3.2过程中遇到的问题


由于安装前没有仔细阅读发现说明,以为是tortoisesvn对vs的web项目有了什么新的支持,就选上了asp.net hach安装项。

安装完成后,重新启动计算机,使用tortoisesvn能够正常查看repository中的项目。但是转到以前的工作目录时,发现各种受控文件 的图标都没有了,跟普通文件夹一样。仔细想想,svn的工作目录和普通文件夹的区别就在于工作目录中有一个隐藏的.svn文件夹,里面保存了svn的相关 信息,工作目录不能正常显示可能与此有关。建立一个临时文件夹,checkout一个项目到里面,果然发现隐藏的.svn文件夹的名字变成了_svn,难 怪原来的工作目录不能正常显示。将原来的工作目录下的.svn文件夹更名为_svn,就可以正常工作了。

为了搞清楚缘由,连到subversion中文站,查看tortoisesvn-1.3.2的发行说明,有下面一段:

对windows下的'_svn'目录的官方支持 (客户端和语言绑定)

"_svn"的使用现在被官方的支持:因为一些版本的asp.net不允许点开头的目录(例如".svn",标准的subversion工作拷贝管理目录),svn命令客户端和svnversion现 在可以使用svn_asp_dot_net_hack环境变量,如果设置了这个值,他们会使用"_svn"而不是".svn"。我们推荐所有的 subversion的windows客户端利用这个特性,注意如果设置了这个环境变量,使用标准".svn"的工作拷贝将不会工作,需要重新检出 "_svn"的工作拷贝。

第三方的使用subversion库的软件需要更新来得到等价的api条哟个,见三个新的api: svn_wc_is_adm_dir, svn_wc_get_adm_dirsvn_wc_set_adm_dir,设置svn_asp_dot_net_hack环境变量只会在上面提到的客户端程序中工作,而且只有在windows下。对于库并不工作;库用户需要调用新的api,平台独立的。见这个邮件和它的回复。

由于作者不使用vs开发web项目,因此还想回到用.svn的状态,故删除svn_asp_dot_net_hack环境变量,并重新启动计算机,原来的工作目录可以正常显示了。

还有两点需要说明的是:

  1. 在windows的资源管理器中,不能将文件夹命名为以点开头的形式,故无法在资源管理器中将_svn重新命名为.svn,要完成该工作,需要转到命令提示符窗口进行;
  2. 从tortoisesvn 1.1.×版升级到1.2.×或1.3.×时,由于berkeley db升级的原因,你无法查看原来的
    repository,升级原来的repository的方法可以参见subversion faq。

扫描关注微信公众号