SVN笔记

最近项目中需要在SVN中做自动检查,所以研究下SVN和相关内容,这里把SVN的配置和安装方法记录一下。

一. 安装SVN

1. 因为要在虚拟机下工作,所以采用源码的方式安装SVN,先去http://subversion.tigris.org下载这两个文件(版本号不固定):

subversion-1.6.1.tar.gz

subversion-deps-1.6.1.tar.gz

以上版本需要一致。

2. 上传以上两个文件到服务器上(可以使用scp命令),解压,安装。解压命令为:

tarxfvz subversion-1.6.1.tar.gz

tarxfvz subversion-deps-1.6.1.tar.gz

解压后生成 subversion-1.6.1 子目录,两个压缩包解压后都会自动放到此目录下,不用手动更改。

进入解压子目录:

cd subversion-1.6.1

 ./configure –prefix=/opt/subversion

make && make install

经典的版本查看已确认是否安装成功:svn --version,输出版本号表示安装成功。

二. 配置和创建

1. 创建一个本地的仓库:

svnadmin create /Users/apple/svn

在/Users/apple/svn文件夹生成一些文件夹和文件。

修改/svn/conf目录下的三个文件:

打开svnserve.conf,将下列配置项前面的#和空格都去掉

# anon-access = read

# auth-access = write

# password-db = passwd

# authz-db = authz

打开passwd,在[users]下面添加帐号和密码,比如:

[users]

admin=admin

表示用户名和密码都是admin,就像你的路由器一样。

打开authz,配置用户组和权限

在[groups]下面添加组名和用户名,多个用户之间用逗号(,)隔开

[groups]

mypgroup=admin

表示将刚刚创建的admin用户加入到mygroup这个组里去。

然后给这个组赋予权限,使用[/]代表svn服务器中的所有资源库

[/]

@mypgroup= rw

表示mypgroup这个组有读和写的权限。

2. 启动仓库

svnserve -d -r /Users/apple/svn 启动刚刚创建的仓库,没有消息就是好消息,说明启动成功。

三. SVN使用

1.从本地导入代码到服务器(第一次初始化导入)

svn import /Users/apple/Documents/eclipse_workspace/weibo svn://localhost/mycode/weibo --username=admin --password=admin -m "init import"

我解释下指令的意思:将/Users/apple/Documents/eclipse_workspace/weibo中的所有内容,上传到服务器mycode仓库的weibo目录下,后面双引号中的"初始化导入"是注释

2.从服务器端下载代码到客户端本地

在终端中输入svn checkout svn://localhost/mycode --username=admin --password=admin /Users/apple/Documents/code

我解释下指令的意思:将服务器中mycode仓库的内容下载到/Users/apple/Documents/code目录中

3.提交更改过的代码到服务器

在步骤2中已经将服务器端的代码都下载到/Users/apple/Documents/code目录中,现在修改下里面的一些代码,然后提交这些修改到服务器

1> 打开终端,先定位到/Users/apple/Documents/code目录,输入:cd/Users/apple/Documents/code

2> 输入提交指令:svn commit -m "修改了main.m文件"

这个指令会将/Users/apple/Documents/code下的所有修改都同步到服务器端,假如这次我只修改了main.文件

可以看到终端的打印信息:

Sending        weibo/weibo/main.m

Transmitting file data .

Committed revision2.

4.更新服务器端的代码到客户端

这个应该是最简单的指令了,在终端中定位到客户端代码目录后,比如上面的/Users/apple/Documents/code目录,然后再输入指令:svn update

5.至于svn的其他用法,可以在终端输入:svn help

你可能感兴趣的:(SVN笔记)