SVN8.COM - SVN中文技术网

投递文章 投稿指南 SVN中文技术网公告:技术交流诚聘优秀版主最新公告
搜索: 您的位置主页>SVN使用>TortoiseSVN日常使用指南

TortoiseSVN日常使用指南

SVN技术网 www.svn8.com 2008-03-18 10:37:20   来源:   作者:  评论:0 点击:

如果提交失败,自动重新打开提交对话框

当一个提交操作由于某些原因(工作拷贝需要更新、pre-commit钩子程序拒绝了提交、网络错误等等)失败了,你可以选择该选项来使提交对话框保持打开,以便重新操作。当然,你应该注意到这可能会导致一些问题。若发生的错误意味着你需要更新你的工作拷贝,而此更新操作将导致冲突,那么你必须先解决这些事情再说。

启动时连接版本库

“检查更新”对话框将默认检查工作拷贝,但仅当你点击 检查版本库 时才连接你的版本库做检查。若你想总是去检查版本库,就可以使用该设置来使版本库检查的动作每次都自动启动。

按数字顺序排序

版本库浏览器可以使用一个更智能的排序算法,该算法处理包含数字的路径的效果比纯按ASCII排序效果要好。这在某些时候会变得很有用,比如用来使版本号标签排成正确的顺序。该选项可以控制你所使用的默认排序类型。

5.27.2.5. TSVN颜色设置

图 5.46. 设置对话框,颜色页面

设置对话框,颜色页面

此对话框允许你按照你喜欢的方式来配置TSVN对话框使用的文本颜色。

可能或确实有冲突/有问题

当更新时或合并时发生了冲突。如果对应于版本控制下的文件/文件夹,存在一个同名的非版本控制的文件/文件夹,此时做更新将被阻碍。

此颜色同样被用在进程对话框的错误信息中。

添加文件

向版本库添加的条目。

丢失/已删除/已替换

已从工作拷贝中遗失的条目;已从版本库中删除;或已经从工作拷贝删除并且被另一个同名文件替换。

合并

从版本库所做的更改被成功地合并到工作拷贝,并无任何冲突产生。

已修改/已复制

已经增加(现在只是修改),或者在版本库中复制。也在包含复制条目的日志对话框中使用。

删除的节点

一个已经从版本库中删除了的条目。

添加的节点

一个通过添加、拷贝或移动操作,已经被添加到版本库的条目。

重命名的节点

一个在版本库中已经被重命名的条目。

替换的节点

该原始条目已经被删除,且有同名条目替换了的条目。

5.27.3. 网络设置

<placeholder-1> 如果需要穿透你公司的防火墙,在这里可以配置你的代理服务器。</placeholder-1>

如果你需要对每个版本库建立一套代理设置,你必须使用Subversion服务器文件来配置。使用编辑来直接访问该配置文件(servers.txt)。该文件的细节和使用方法可以参考Subversion Manual

你同样可以在此指定SSH客户端程序,用来支持TortoiseSVN同使用svn+ssh协议的版本库建立安全连接。我们推荐您使用TortoisePlink.exe。这是著名的Plink程序的一个定制版本, 并且业已包含在TortoiseSVN之中,但它被编译成了一个无窗口的应用,因此当你每次认证的时候将不会看到弹出的DOS窗口。

这里有个不弹出窗口的副作用:将没有什么错误信息可供你追踪。因此倘若认证失败你将得到一个信息说:“Unable to write to standard output”。这样一来,我们就推荐你第一次设置时使用原始的Plink程序;而当一切工作正常之时,再使用定制版的TortoisePlink,并且重复利用那些相同的参数。

5.27.4. 外部程序设置

图 5.47. 设置对话框,差异查看页面

设置对话框,差异查看页面

在这里你可以定义你自己的差异查看/合并工具. 默认设置是使用与TortoiseSVN一同安装的TortoiseMerge。

阅读 第 5.9.4 节 “其他的比较/合并工具” 来了解人们为配合TortoiseSVN工作而使用的外部差异查看/合并程序列表。

5.27.4.1. 差异查看器

有时你可能需要一个外部的差异查看程序来比较不同版本的文件。在为你的命令行填写各种可选参数的同时,要确保这些外部程序从中获得文件名。在TortoiseSVN编辑命令行时,使用以 % 开头的替代参数。当外部程序执行至遇到这些替代参数,它将从TortoiseSVN那里获取那些实际的值。参数的填写顺序将依赖于你使用的差异查看程序。

%base

没更改的原始文件

%bname

原始文件的窗口标题

%mine

你更改过的新文件

%yname

你新文件的窗口标题

窗口标题并不一定代表真正的文件名。TortoiseSVN把它伪装成一个名字用来创建和显示。因此,倘若你在对比一个版本为123的文件和你当前工作拷贝中的文件,名字将显示为 文件名 : 版本 123文件名 : 工作拷贝

例如,使用 ExamDiff Pro:

C:\Path-To\ExamDiff.exe %base %mine

或者使用 KDiff3:

C:\Path-To\kdiff3.exe %base %mine --L1 %bname --L2 %yname

或者使用 WinMerge:

C:\Path-To\WinMerge.exe -e -ub -dl %bname -dr %yname %base %mine

或者使用 Araxis:

C:\Path-To\compare.exe /max /wait /title1:%bname /title2:%yname %base %mine

如果你使用了 svn:keywords 属性来扩展关键词,特别是那些 revision 版本关键词,那么在那些纯粹在关键词上取值不同的文件之间对比将有一些不同。同样如果你使用 svn:eol-style = native,那么在工作基础版本文件只有纯粹的 LF (换行)结束符的地方,你的文件将有完整的 CR-LF (回车-换行)结束符。TSVN在做差异对比操作之前,通常会先行对那些扩展关键词和结束符等格式进行解析转换,从而自动隐藏这些差异。无论如何,在遇到大文件时这样做无疑会经过一个很长的处理时间。如果取消对 与基础版本比较时转换文件 的勾选,那么TSVN将忽略这些对文件的预处理。

5.27.4.2. 合并工具

外部合并程序被用来解决文件冲突。像差异查看程序那样,替代参数同样被用在命令行中。

%base

没有被你或他人更改的原始文件

%bname

原始文件的窗口标题

%mine

你更改过的新文件

%yname

你新文件的窗口标题

%theirs

档案库中存放的文件

%tname

档案库中文件的窗口标题



技术交流 录入:SVN中文技术网[www.svn8.com]
Tags:  
责任编辑:
  • 请文明参与讨论,禁止漫骂攻击。 用户名:新注册) 密码: 匿名:
    评论总数:0 [ 查看全部 ] 网友评论