SVN客户端使用手册

第一步:安装客户端

安装后,在任意空白处或者文件,文件夹单击鼠标右键会多出两个图标,分别是SVN Checkout(SVN 检出)TortoiseSVN

 

 

第二步:建立工作区

项目开始之前,在本地PC的硬盘上,创建一个文件夹,文件夹命名随意(例如:信用保険2

),该文件夹即作为软件开发者在项目开发过程中的工作区。

 

第三步:下载版本库

假如现在开发一个项目,配置管理员会在服务端建立一个该项目的版本库。

在【信用保険2】文件夹上,右键单击鼠标。选择【SVN Checkout】,会出现如下窗口

1

URL of repository(版本库URL)中输入版本库地址,svn://172.28.84.27,在Checkout dir中系统会自动添加第二步所创建的工作区目录D:\信用保険2。

Checkout Depth中选择Fully recursive

Revision中,选中HEAD revision(最新版本),这样将会下载到版本库的最新最完整的版本。如果想下载库中的旧版本文件,可选中Revision(版本),然后填入版本号即可。

如果不想下载整个版本库,而是只想下载自己负责的那部分模块,可以在URL后添加模块名,例如svn://172.28.84.27\12_プログラム製造

单击OK,输入用户名和密码

 

第四步:修改版本库

对版本库的修改包括修改文件内容,添加删除文件,添加删除目录。

经过第三步的操作,本地的工作区文件夹,即信用保険2上会有绿色对勾出现,工作区下的文件也会带有绿色对勾,如图2

2

选择你需要修改的文件,右键单击,选择Get Lock,如下图所示。

 

如果锁定成功则该文件上会加上锁的标记,如果失败则会如下图提示,说明有其他人正在修改文件。

 

想取消LOCK的话请在文件上单击右键,选择Release lock (在原来Get lock的位置)。

锁定后,如果对库中某一个文件进行了修改,系统会自动为这个文件和这个文件所在的各级父文件夹加上红色叹号,代表该文件或目录已经在本地被修改,如图3

3

 

当所有对版本库的修改操作完毕后,右键单击工作区文件夹,选择commit提交新版本

输入用户名/密码后系统将把修改后的版本库上传到服务端,即完成一次对版本库的更新。

注意:

新版本提交之后,其他拥有写权限的用户也许会重复以上几步的操作,完成对版本库的再一次更新。所以,每次在工作区文件夹下修改本地版本库之前,必须首先对本地版本库执行一次更新(右键单击工作区,选择SVN Updata ),将最新的版本下载到本地,然后再进行修改操作。

 

二.其他操作

在日常的软件开发过程中,除了以上介绍的下载,提交,更新操作外,还有另外几种常用操作。

1)比较文件的不同之处

当对soc_1做了修改之后,soc_1文件会出现红色叹号,表示已经修改,如果想查看修改后的soc_1文件与修改前有何不同,可以右键单击此文件,选择

diff ,系统探出一个窗口,窗口分为两个部分,左边为更改之前的版本,右边为更改之后的版本。并在不同之处作出标记和说明。

如果是excel文档的话,选择diff之后,系统会打开一个excel窗口,窗口分为两个部分,下边为更改之前的版本,上边为更改之后的版本。并在其中标出修改后的版本与修改前有何不同。如图4

4

 

 

 

 

2)查看日志

如果想查看一个文件的日志,例如Word_1,右键单击这个文件,选择show log ,系统会踏出一个窗口,并在窗口中显示该文件各个版本的log。如图5

 

5

 

3)查看版本树

如果想查看文件的版本树,右键单击该文件,选择Revision graph ,系统将会打开一个窗口,并在窗口中显示该文件的版本树。如图6

6

之所以只显示了四个版本,是因为选择了只显示发生过变化的版本,都是经过用户修改后提交的。

4)下载某个文件的旧版本

如果想要得到某个文件的旧版本,只需在该文件上单击右键,选择Updata to revision…即可。系统会提示输入版本号。例如要下载文件的第12个版本,只需填入12即可。如图7。查看完版本12的文件后,如果想在此回到最新版本,只需要对该文件运行Updata即可。

7

 

5)重命名和删除文件

如果要删除一个文件或重命名一个文件,注意不要在windows下直接操作。只需右键单击该文件,选择RenameDelete svn系统便会完成操作。

在信用保険2中将文件重命名或删除后,服务端的文件结构不会变化,只有当提交新版本库后,即commit后,服务端的文件结构才会被更新。

如果误删除了文件,在没有提交版本库之前,可以通过对版本库的升级将文件重新下载到本地的版本库,也可以通过revert 恢复(参考第八条)。如果文件删除,并且已经提交,那么要找回文件只能通过下载旧版本库来完成,参考(4)。

6)创建分支

版本库中最初的文件word_1,word_2都是主干文件。如果想要为word_1创建一个分支,只需右键单击word_1,选择Branch/Tag ,系统会弹出一个窗口,如图7在窗口中,From URL表示要创建的这个分支是word_1的分支(系统会自动添加,不必更改)。在To URL中,需要更改一下文件名,在文件名后加一个标志即可,例如“_branch”,路径不需要更改。在Creat copy in the repository from中,可以选择分支文件是由word_1的那一个版本拷贝来的。最后填写日志,选择OK

7

分支创建完毕,Updata(更新)版本库到本地,系统会将word_1的主干文件和分支文件word_1_branch同时下载到本地版本库,如图8.1,然后即可在分支文件上进行操作。此时word_1的版本树如图8.2

8.1

8.2

7)合并分支

当需要把word_1_branc分支文件合并到word_1主干文件时,右键单击word_1,选择Merge ,会弹出一个窗口,如图9

9

From输入框中填入主干的URL,在To输入框中填入分支的URL。在FromTo中,都有两个选项HEAD RevisionRevision,表示要进行合并的是word_1的那个版本。合并之后主干文件会标注红色叹号,表示已被修改,并可以提交。如果合并后文件标注的是黄色叹号,表示文件有冲突,处理方法见第三部分异常处理

8)撤销修改

当对一个文件进行了修改并保存后(注意此处并没有进行提交),如果对修改不满意,想要重新修改,可以右键单击修改过的文件(带红色叹号的那个),然后选择revert ,前面的一系列修改便会被撤销,恢复到Updata之后的状态。如果一个文件被误删除,也可通过右键单击该文件所在的目录,选择revert来恢复。

三.异常处理

此处所说的异常主要是指文件发生冲突。以用户huyuan和用户liuxl为例,

当两个用户同时下载了最新的版本库,并对库中同一个文件Word_2进行修改提交时,首先提交的用户huyuan不会发生异常,第二个提交的用户liuxl便会出现无法提交的现象。因为服务端的版本库已经被huyuan更新,liuxl用户在上传时,系统会提示出错。

 

在这种情况下,liuxl用户需要首先对修改的文件进行Updata文件操作。如果两个用户修改了文件Word_2的同一个地方,则在liuxl用户执行Updata后,系统会将本地的Word_2与从服务端下载Word_2合并到一个文件上,并在该文件图标上标上黄色叹号,表示文件出冲突。在文件中通过“<<<<<<”“>>>>>>”标识冲突位置和冲突内容。Word_2用户只有与huyuan协商,将该冲突处理,之后单击右键,选择Resolve,冲突标记消除,才能够再次提交,否则无法提交。

蓝色部分表示服务端版本库中的最新版本与本地文件修改发生冲突的地方。

紫色表示是第几个版本发生了冲突

posted @ 2011-10-13 17:55  TerryChou  阅读(3885)  评论(0编辑  收藏  举报