版本管理工具TSVN-learning剖析.doc
文本预览下载声明
一起学习如何使用TSVN
安装并汉化
安装
先安装TortoiseSVN,再安装LanguagePack
汉化
在windows右键菜单中选择TortoiseSVN-Settings,如下图
然后在弹出的对话框中按下图选择后并点击确定,即可汉化成功:
通过认证
第一次使用TSVN访问SVN服务器时,会弹出认证窗口,此时需要输入版本库URL、用户名和密码等信息。这些内容由SVN服务器管理员提供。可以选择将此认证信息保存在你的个人电脑中。日后在必要的时候也可以删除电脑中存储的TSVN认证数据,删除方法在第16节“设置”中介绍。
导入(Import)
将你的项目存放在一个单独的文件夹中,此文件夹应该包括三个子文件夹:trunk、branches、tags。初始状态时,branches和tags为空,而整个项目存放在trunk中。branches和tags为日后存放此项目分支和标签的目录。具体操作方法见第13节。
右键此文件夹,选择“TortoiseSVN-导入”,然后在弹出的对话框中填入相关信息,包括版本库URL和首次导入的日志信息,参照下图所示:
可以简单格式化日志消息。使用*文本*表示粗体,_文本_表示下划线,^文本^表示斜体。
TortoiseSVN包含了一个拼写检查器帮助你正确地书写日志信息。对任何错误拼写的词都高亮显示。使用右键菜单可以获得修改建议。当然它不会知道所有的技术术语,所以有时一些拼写正确的词会被当作错误。但不用担心,你可以使用右键菜单将它们加入你的个人字典中。
检出(Checkout)
新建一个文件夹,用来存储你要检出的项目,进入这个空文件夹,在右键菜单中选择“检出”,然后在弹出的对话框中按要求填写,如下图:
如果你只希望检出最顶层的文件夹而忽略子文件夹,请选中“Only check out the top folder”选项;如果项目含有外部项目的引用,而这个引用你不希望同时检出,请选中“Omit externals”选项。
如果上述两个选项的任何一个选中了,以后应该使用“TortoiseSVN-更新至版本”项来进行更新,而不能使用直接使用“SVN更新”,因为标准的更新将会包含所有的子文件夹和外部引用。
检出后,本地仓库文件里的内容如下所示:
在实际的操作中,建议只检出trunk的那部分目录树。如果你在URL中指定了整个库的路径,你的硬盘随时可能被塞满,因为你将会得到整个版本库树的复本,包括项目所有的分支和标签。
检查更新(Check for modifications)
当你对本地拷贝中的文件做了更改后,可以使用“TortoiseSVN-检查更新”来列出变更过的文件。若还想查看服务器端的变更,需要在弹出的对话框中点击右下角的“Check repository”选项。
在多人并行开发的情况下,提交你的修改前,最好先进行“检查修改”,这对冲突文件的处理比较有利。如果没有冲突,就可以放心的把自己的更改提交到服务器。
提交(Commit)
准备好将你的修改提交到服务器了?那么就用“SVN提交”来实现吧。弹出的对话框如下图所示:
在提交对话框中双击任何“修改”过的文件,将运行外部diff工具(TortoiseMerge)来对改动前后的文件做比较。右键菜单中有更多选项供你选择。
在变更列表中显示的列是可定制的,可以通过列名的右键菜单来增减项。还可以手动拖动各列边界来改变其宽度。你的定制会被保留下来。
变更文件的不同状态将会显示不同的颜色。详情参见第16节。
解决冲突
两个开发人员修改了同一文件的相同几行,在你(假定你为后提交者)提交时会发生冲突。这在并行开发中是有可能发生的。由于Subversion不知道你的项目的具体情况,它把解决冲突的工作留给了开发人员。一旦出现冲突,SVN会在冲突文件旁新生成3个文件。他们分别是:
filename.ext.mine(你想提交的文件)
filename.ext.rOLDREV(你更改前的文件,即你的本地基础版本文件)
filename.ext.rNEWREV(库中的最新版本文件)
而且,在你欲提交的文件中会加入冲突标记,如下所示:
filename
你的修改
=======
来自版本库中的代码
revision
此时,你可以选择:①打开冲突文件手动合并冲突②用上述3个文件中的任意一个覆盖你更改后的文件③用revert放弃修改。
如果你选择继续修改,在解决冲突后,选择“TortoiseSVN-已解决”项来通知SVN,此时SVN将删除3个临时文件,而你可以继续你的提交。
更新至版本N(Update to revision)
如果想看某文件的某个版本,可用“TortoiseSVN-更新至版本”项来实现,在弹出的对话框中可以选择
显示全部