linux服务器搭建svn服务器

梦想与她 提交于 2020-04-05 15:02:19

简介

Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。

这些数据放置在一个中央资料档案库(repository) 中。

这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。

这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。

SVN 的一些概念

  1. repository(源代码库):源代码统一存放的地方
  2. Checkout(提取):当你手上没有源代码的时候,你需要从repository checkout一份
  3. Commit(提交):当你已经修改了代码,你就需要Commit到repository
  4. Update (更新):当你已经Checkout了一份源代码, Update一下你就可以和Repository 上的源代码同步,你手上的代码就会有最新的变更

日常开发过程其实就是这样的(假设你已经Checkout并且已经工作了几天):Update(获得最新的代码) —>作出自己的修改并调试成功 —> Commit(大家就可以看到你的修改了) 。

如果两个程序员同时修改了同一个文件呢, SVN可以合并这两个程序员的改动,实际上SVN管理源代码是以行为单位的,就是说两个程序员只要不是修改了同一行程序,SVN都会自动合并两种修改。

如果是同一行,SVN会提示文件Confict, 冲突,需要手动确认

 

1.  yum install -y subversion

 

 

 

 

 

 

 

 这样就代表成功了!

 

2.创建版本库

先建目录

在/opt目录下面创建一个svn目录,用来作为svn存储目录,命令如下:

 

 cd wxq 会看到自动生成的版本库文件:

conf  db  format  hooks  locks  README.txt

关于仓库文件的说明:

db目录:就是所有版本控制的数据存放文件。

hooks目录:放置hook脚本文件的目录。

locks目录:用来放置subversion见艰苦锁定数据的目录,用来追踪存取文件库的客户端。

format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号。

conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)。

进入conf目录(该svn版本库配置文件)cd conf/

authz文件是权限控制文件

passwd是帐号密码文件

svnserve.conf SVN服务配置文件

设置帐号密码 vi passwd

在[users]块中添加用户和密码,格式:帐号=密码,如suzhan=redhat

 

 

设置权限 vi authz

在末尾添加如下代码:

[/]

suzhan=rw (r:读,w:写)

 

 

 

修改svnserve.conf文件 vi svnserve.conf

打开下面的几个注释:

anon-access = read #匿名用户可读

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

password-db = passwd #使用哪个文件作为账号文件

authz-db = authz #使用哪个文件作为权限文件

realm = /var/svn/svnrepos # 认证空间名,版本库所在目录

 

 

   启动svn版本库

 svnserve -d -r /var/svn/svnrepos

停止SVN命令
killall svnserve用ps -ef |grep svn 查看服务是否开启。

 

 

window 上 

鼠标右键检出, 检出url 为 服务器ip地址

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!