SVN常用命令小结(持续更新)

SVN常用命令总结(持续更新)

      现在流行的协同管理工具估计就属SVN和Git了。这两者都使用过,不过现在正在使用的是SVN,故将经常使用的命令总结下来。

不管是Windows端的svn客户端还是eclipse的subversion插件,都是界面化操作。这里记录的是Linux下的命令行式操作命令:

1)查找帮助:svn help

2)将文件checkout到本地目录:svn checkout pathpath是服务器上的目录)。如果check出的是工程,且需要用一个新的工程名则可以用该语句:svn checkout path(svn://192.168.1.1/pro/domain) newName

简写 svn co

3)往版本库添加文件:svn add file

4)将改动的文件提交到版本库:svn commit -m "内容提要"  file   简写:svn ci

5)加锁、解锁:svn lock -m "内容" file      svn unlock file

6)更新到某个版本:svn update更新当前目录;svn update -r 200 filefile还原到版本200.svn update file

7)查看文件或者目录状态:svn status path(目录下的文件和子目录的状态,正常状态不显示)

【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】

svn status -v path信息更详细些

8)删除文件:svn delete path -m "内容"

9)查看日志:svn log path显示修改记录,以及版本号的变化

10)查看文件详细信息:svn info path

11)比较差异:svn diff path(将修改的文件与基础版本比较);svn diff -r m:n path(将文件的m版本和n版本进行比较)

12)将两个版本的差异合并到当前文件:svn merge -r m:n path一般会产生冲突,需要处理一下

13)恢复本地修改:svn revert 无法恢复被删除的目录 用法:revert path

14)将一个工程加入到svn中:svn import projectName [url|filePath]

15)用时间查看版本号:

svn log -r {2011-04-01}:{2011-04-22}

16)分支与合并:在svn中一个工程目录里都有一个主干truck目录和一个分支branches目录。创建分支:svn copy [url] [url]

例如:

svn cp http://59.251.189.152:8989/svn/ron/trunk http://59.251.189.152:8989/svn/ron/branches/branch1.2.68_renrendai

就是将truck中的代码copybranches下的一个文件夹中,这个文件夹就是新的分支。以后checkout的时候可以check这个分支,提交的代码就会到这个分支下了。

合并:

svn merge http://svn.example.com/repos/calc/trunk 这个是将主干truck中的代码合并到当前分支下;如果要将当前分支合并到truck下,反之就行。

    未完待续...