SVN入门(命令汇总)

来源:互联网 发布:足球软件哪个好 编辑:程序博客网 时间:2024/04/29 19:59

前言

在学习使用安装SVN的过程中,觉得http://svnbook.subversion.org.cn/提供的参考文章并不太容易查找,在配置过程中好几次都花了很多时间去寻找所需要的章节,因此决定自己编写一个step by step式的入门文章。

(对新手而言,svn官方的文档太长了,但其实在实际应用过程中,官方的文档提供了大部分用户可能会遇到的问题的解决办法) ----- 2007年4月添加

本文仅仅是我在安装和使用了SVN后的一个小结,目的是便于以后查找所需的命令。因此文中没有对版本控制的概念做解释,也没有写SVN的新特征(可以看 http://svnbook.subversion.org.cn/中的介绍),所以在阅读前建议先对相关知识做一个大致的了解。我想,不论是SVN的管理员还是使用者,都应该对基本概念和名次有所了解吧。

 

参考书:《使用Subversion进行版本控制》http://svnbook.subversion.org.cn

第一章 简单服务器的假设

第一节 安装和配置系统环境

在官方网站http://subversion.tigris.org/下载的安装包中,同时包含了服务端程序和客户端程序。在下面的介绍中,我们将在一台电脑上同时做服务端和客户端的演练。

首先安装SVN,假定是我们把程序安装在C:/SVN/,服务端和客户端的可执行文件就会自动被安装到目录C:/SVN/BIN/中。

下面列出文中用到的三个可执行文件:

SVN.EXE - SVN客户端

SVNADMIN - SVN服务端管理工具

SVNSERVE.EXE - SVN服务程序

用过CVS的用户都知道,CVS命令都是没有图形界面的,SVN也是如此,所以原来使用VSS的用户需要更改一下以来图形界面的习惯,要进入Windows的终端窗口(cmd.exe)进行之后的SVN使用。

安装完SVN后的第一个步骤是设置PATH,在PATH中添加路径C:/SVN/BIN/

 

如何进入终端窗口

在开始菜单中选择“运行...”,输入cmd后确定。

 

如何设置PATH

在我的电脑上点击右键,选择属性,打开系统属性对话框。选择高级属性页,点击“环境变量”按钮,在用户变量中添加或修改PATH的值。

 

第二节 启动SVNSERVE服务

默认的服务端口是3690

 

介绍两种启动方式,第一种是INET方式,传递参数-i(-inet)

C:/>svnserve -i

如果没有错误提示,就说明服务已经启动。

 

一般要使用SVN的话,都是把SVNSERVE作为服务安装在系统中,并随系统的启动而自动启动的。第二种方式就是把SVNSERVE安装成服务,首先用sc命令建新的服务,

C:/>sc create svnservice binpath= "/"C:/SVN /BIN/SVNSERVE.EXE/" --service" displayname= "SVNService" depend= Tcpip

然后在控制面板->管理工具->服务中找出SVNService,把启动方式修改成“自动”,并手动启动此服务。

第三节 创建版本库

很简单,目的只是在服务器的硬盘上指定一个目录,作为版本库的根目录。

C:/>svnadmin create d:/svnhome

在建版本库之前要提前把父目录建好,否则会提示路径错误。

建完之后查看一下版本库的目录,下一章节介绍其中的conf目录,设置访问权限。

第四节 密码与安全

修改d:/svnhome/conf/svnserve.conf,并根据其中的介绍修改passwd文件,以此可以实现设定版本库的用户访问权限。更多内容请参考官方文档。

 

在启动服务的命令行中添加参数-r可以指定版本库的root,增加服务器的安全。

C:/>svnserve -i -r D:/svnroot

C:/>sc create svnservice binpath= "/"C:/SVN /BIN/SVNSERVE.EXE/" --service -r D:/svnroot" displayname= "SVNService" depend= Tcpip

用实例来说明一下-r的作用。如果参数中没有-r,那么访问版本库的URLsvn://host/svnhome/,这样就把版本库在硬盘上的路径暴露给用户了。加上-r后,访问路径变成了svn://host/

第二章 导入并创建新项目

导入项目的工具是SVN.EXE

举例说明如何导入。

 

假定本地项目文件存放在E:/temp/,运行

C:/>svn import e:/temp svn://localhost/svnhome/

 

技巧:通常在临时目录中用MD命令建立比较的目录结构,把目录导入到版本库中就可以。之后通过checkin,checkout,add等操作对版本库中的项目添加文件。

 

第三章 SVN客户端与项目开发

IMPORT比较特殊,通常是PM在项目之初使用,真正项目开发过程中是不需要的,所以不再重复介绍。

 

help - 帮助

语法:

svn help [SUBCOMMAND...]

描述:

当手边没有这本书时,这是你使用Subversion最好的朋友!

别名:

?,h

 

checkout 从版本库取出一个工作拷贝。

语法:

svn checkout URL[@REV]... [PATH]

描述:

从版本库取出一个工作拷贝,如果省略PATHURL的基名称会作为目标,如果给定多个URL,每一个都会检出到PATH的子目录,使用URL基名称的子目录名称。

别名:

co

举例:

D:/>svn co svn://127.0.0.1/svnhome/ D:/svnprj/

把项目导出到D盘,在svnprj中有一个隐藏的.svn目录,是svn用于版本控制的,请不要删除。

 

其它命令

 

 

第四章 SVN第三方工具

用命令行的方式操作SVN对用户来说是件比较麻烦的事情,所以很多厂商都针对此开发了许多可用图形界面操作的工具。

TortoiseSVN - TortoiseCVS的开发商提供,功能也类似。它操作系统的资源管理器结合在一起,非常适合初学者使用。

官方网址:http://tortoisesvn.tigris.org

 

AnkhSVN - Visual Studio.netsvn客户端插件

官方网址:http://ankhsvn.tigris.org/

 

http://www.tigris.org/servlets/ProjectList还可以查看到一切其它关于SVN的软件,它们都是开源免费的。

 

编者注:

做人要厚道,转载要注明出处

对本文有什么建议,或者文章中有任何不正确的地方,请联系。

邮箱:liyue80@gmail.com

[全文完]

原创粉丝点击