就在同时, Stefan Küng 正在寻找一个好用的并且免费的版本控制系统。他找到了 Subversion 和TortoiseSVN 的源码。因为 TortoiseSVN 还不能使用,他加入了项目并开始编码。很快,他就重写了现有的大部分代码并开始添加命令和功能,到了某个时段,最初的代码已经都被改写了。
由于 Subversion 变得越来越稳定,它吸引了越来越多用户,他们同时也开始使用 TortoiseSVN 作为Subversion 的客户端程序。用户数量快速增长(并且每天还在增长)。这时候,Lübbe Onken 提出帮助项目提供精美的图标和 TortoiseSVN 的标志。现在他负责照看网站和管理多语言翻译。
9.4 TortoiseSVN安装
①下载安装程序:
Win32位:
Win64位:
Win32位语言包:
Win64位语言包:
②以Win32位为例
9.5 中文语言包安装
在任意目录下点右键→TortoiseSVN→settings
9.6 检出
①创建一个目录用来存放检出得到的文件,例如MyCRM
②进入目录MyCRM,点右键
③可以看到检出得到的文件
此时文件图标上没有任何标识。可能你会想到通过重启电脑的方式解决这一问题——其实不用这么麻烦。文件图标是受外壳程序控制的,我们只需要重启外壳程序——explorer.exe就可以了。打开任务管理器,选中explorer.exe进程,结束进程,然后新建进程explorer.exe就可以了。
如果一切顺利的话,你会看到文件图标变成了这样:
④TortoiseSVN图标含义
●图标1: 一个新检出的工作副本使用绿色的对勾做重载。表示Subversion状态正常。
●图标2: 在你开始编辑一个文件后,状态就变成了已修改,而图标重载变成了红色感叹号。通过这种方式,你可以很容易地看出哪些文件从你上次更新工作副本后被修改过,需要被提交。
●图标3: 如果在更新的过程中出现了冲突,图标会变成黄色感叹号。
●图标4: 如果你给一个文件设置了svn:needs-lock属性,Subversion会让此文件只读,直到你获得文件锁。具有这个重载图标的文件来表示你必须在编辑之前先得到锁。
●图标5: 如果你拥有了一个文件的锁,并且Subversion状态是正常,这个重载图标就提醒你如果不使用该文件的话应该释放锁,允许别人提交对该文件的修改。
●图标6: 这个图标表示当前文件夹下的某些文件或文件夹已经被调度从版本控制中删除,或是该文件夹下某个受版本控制的文件丢失了。
●图标7: 加号告诉你有一个文件或目录已经被调度加入版本控制。
●图标8: 横条告诉你有一个文件或目录被版本控制系统所忽略。这个图标重载是可选的。
●图标9: 这个图标说明文件和目录未被版本控制,但是也没有被忽略。这个图标重载是可选的。
9.7 纳入版本控制
①新建文件abc.txt
②在文件上点右键
③添加后文件图标发生变化
9.8 提交
①使用TortoiseSVN可以提交具体某一个文件,或某一个目录下的所有改变。方法就是在想要提交的项目下点右键,然后SVN Commit...,就可以看到如下界面
②日志内容如果不填,TortoiseSVN会提交一个空字符串作为日志信息。
③提交后显示信息如下
④没有纳入版本控制的文件默认是不在提交范围内的,直接在新创建的文件上点右键只能看到add操作的选项,如前所述。但在新创建的文件所在目录点右键选择SVN commit...,可以看到如下界面
将文件newFile.txt选中
同样可以提交文件,TortoiseSVN会帮我们自动将newFile.txt纳入版本控制
9.9 更新
在要更新的文件或目录上点右键→SVN Update
9.10 回复历史版本
①查看历史版本内容
[1]首先需要把对应版本库的匿名访问权限设置为none:anon-access = none
[2]在要查看历史版本的文件上点右键→TortoiseSVN→Show log
[3]在感兴趣的历史版本上点右键,可以与当前工作副本进行比较,或直接打开。
②在要回复历史版本的文件上点右键→Update to revision
填上想要回到的版本即可
9.11 解决冲突
①文件发生冲突时的状态和在Eclipse中一样,这里就不赘述了。
②在冲突的文件上点右键→Edit Conflicts
③有“叹号”的行是发生冲突的行
④在冲突行点右键
可以选择四种操作:
[1]使用我的
[2]使用他们的
[3]把我的放在他们的前面
[4]把他们的放在我的前面
⑤在冲突解决后,直接保存——这时TortoiseSVN自动弹出如下确认界面
⑥文件变为红色叹号标志,自动生成的三个文件被删除。提交修改即可。