linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN

一、什么是SVN

SVN是一种版本控制系统的缩写,在Linux环境下要搭建SVN服务的话需要安装配置subversion,该软件由Apache基金会维护。它使用版本号记录了每一次文件和目录的修改状况和具体修改细节。在SVN中任何一次提交都会对所有文件增加一个新的版本号,即使该次提交没有修改这些文件。每一次提交不管是单个文件还是多个文件,都是作为一个整体进行提交。如果提交过程中传输中断也不会引起数据损坏。通过版本号还可以实现数据回滚。

二、SVN服务端的部署

1、在Windows下要安装SVN的话推荐使用VisualSVN Server,它集成了SVN和Apache,基本属于傻瓜式安装,不用单独配置Apache。而在CentOS系统下直接使用一条yum命令就可以安装上subversion

yum install subversion

2、安装好subversion后创建一个目录作为仓库的根目录。该目录会存放项目代码

mkdir /svn #目录名自定义

3、使用svnadmin命令来为每个项目建立自己的仓库。该命令可以跟很多参数,如要查看帮助信息可以使用"svnadmin help [ command ]"来查看,如svnadmin help create

svnadmin create /svn/weixin

4、进入仓库目录可以看到有生成一些目录和文件,这些文件就是create命令所创建的,每一个项目的仓库都有独立的配置文件。项目内的代码或者附件都是无法直接读到的,而是存放在一个数据库文件里,只能通过SVN客户端工具才可以查看到项目中的文件

linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN_第1张图片

5、只需要对以下几个文件做配置:svnserve.conf(主配置文件)、authz(用户权限配置文件)、passwd(用户及密码信息文件)。修改svnserve.conf后需要重启服务,而authz和passwd文件修改后立即生效。

ef348310050fa89d97e03dbb1b386d47.png

svnserve.conf配置说明:

[general]

anon-access = none #取消匿名访问

auth-access = write #授权用户有可写权限

password-db = passwd #指定用户配置文件,后面会用到

authz-db = authz #指定权限配置文件,后面会用到

passwd文件配置说明:

建立svn客户端用户以及密码,一行一个,这里建立了两个用户

linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN_第2张图片

authz文件配置说明:

指定SVN仓库目录,比如一开始"svnadmin create /svn/weixin"创建了weixin这个项目,那么这里就可以写[weixin:/]。紧接着下面写明对应用户的权限,如r、rw、或者为空(没有权限)

linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN_第3张图片

6、使用svnserve命令启动SVN服务,-d表示后台运行svn服务,-r是指定svn的根目录;启动后执行netstat检查端口,默认监听在3690端口上0802f14b845d3987d9056b932351d908.png

三、SVN Windows客户端的使用

1、在Windows下推荐使用Tortoise SVN来操作SVN,安装好软件后在本地电脑创建一个目录,右键该目录选择checkout,这样就可以把SVN服务器上的文件下载到本地。通常情况操作这步后文件夹的图标会发生变化,会多一个勾的图标,如果没有变化,可以重启下本地电脑linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN_第4张图片

2、SVN客户端图标说明

linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN_第5张图片

3、在对话框里输入SVN服务器项目地址以及需要Checkout的目录,然后点击ok按钮,之后会要求输入用户名密码,这个时候就输入在passwd里设置的信息即可

linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN_第6张图片

linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN_第7张图片

4、登录成功后便可以在该工作目录里进行编辑或创建文件,操作完成后对该目录右键,选择check commit提交,这个操作等于是上传到SVN服务器。如果是刚搭建好的SVN服务,服务器端并没有项目文件,那么我们在客户端可以先把本地的文件通过右键--import到服务器上去,相当于是一个初始化,后续进行更新时再选择commit即可。比如实际工作中开发都是在本地电脑通过SVN把站点先checkout一次到本地电脑某个目录,经过更新后再由本地电脑给commit到服务器上的站点目录中,这样服务器上的文件也会更新了。

三、SVN Linux客户端的使用

1、在Linux系统中直接使用svn命令进行各项操作吗,这里执行了一个checkout,代表将SVN服务端里的代码拉取到本地目录中。通过下图可以看到Windows上创建的文件已经出现在系统里ef031d762269d733a5b47b9012bbed07.png

svn checkout svn://192.168.36.100 /svnwork/ --username=tanglu --password=123456789

2、在Linux上创建一个文件后提交到SVN

svn add linux.txt #用add把新增的文件添加进去

svn commit -m "linux test" #使用commit提交到SVN仓库中

3、回到Windows上更新SVN版本可以看到文件变化,而且还可以通过show log来查看每次文件的变动及操作人员以及文件前后发生的具体变化,到此SVN的基本操作就全部演示完毕!

linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN_第8张图片

你可能感兴趣的:(linux系统下svn的使用教程,SVN教程(1)使用subversion在CentOS系统搭建SVN)