天天看点

subversion客户端的基本使用方法(By Robinvane Suen)

svn是subversion的客户端。下面介绍最基本的操作,详细的操作可以参阅subversion文档

1.简介

subversion使用的是copy-modify-merge模型,因此一旦我们从subversion服务器获得工作拷贝 (check out)之后,就可以像修改普通本地文件那样修改这些拷贝。

subversion与vss 6.0(visual sourcesafe)的lock-modify-unlock模型很不一样;它甚至与vss 8.0(visual studio 2005 附带的vss版本)也有一点不一样:对于vss 8.0,获得文件的操作是get latest version,而请求修改文件的操作是check out;而subversion的checkout操作不是请求修改文件,而是获得私有的工作拷贝,这个意义上,checkout有点类似于vss的get latest version,但是subversion并不需要vss的checkout操作,一旦你获得这些工作拷贝之后,你就可以立即开始工作了!

2.常用操作

下面假设subversion仓库的地址是http://server/svn

a) check out

svn checkout http://server/svn

即可在当前目录下建立一个工作拷贝,目录名是svn

b) update

使用命令svn update可以用服务器的版本更新你的工作拷贝

c) add

使用命令 svn add filename可以把filename这个文件或者目录以及目录下面的所有文件标志为添加状态(实际上它并没有立即添加,你可以查看服务器,这些文件都还没有添加进去的!),下一次你提交(commit)这些文件的时候,服务器就会把他们添加到版本库。

d) stat

使用svn stat可以查看文件状态(也就是是否被修改等)

e) commit

使用svn commit filename --message "leave words about this commit",可以提交本地修改到服务器。如果不使用--message选项,则svn会自动打开一个配置文件所指向的编辑器,里面默认有一些修改信息,你可以把这些信息作为附注提交到服务器。或者你也可以不使用--message而使用--file 来指定一个文件作为提交时的附注。

f) switch

有时候管理员修改了版本库的地址,比如修改了主机地址,修改了url等,此时客户端也需要相应的修改:

svn switch --relocate http://xiao/svn http://xiao:81/svn

第一个地址是原来的版本库地址(用svn info可以看到),后面的是新的版本库地址。