首先我们思考下面几个工作中会遇到的问题 1:怎么备份工作文档 2:怎么进行工作文档的版本管理 3:协同合作模式怎么进行数据的同步
一个互联网公司会有非常多的工作角色,如项目经理、产品经理、开发工程师、设计师、测试工程师等等,每天的工作会产生非常多的代码、文档,所以我们需要一个管理工具来对文档进行科学备份和版本控制,今天我们要分享的subversion,简称SVN,就是一个强大的版本控制管理工具。 Subversion,简称SVN,是一个开源的版本控制系统。在Subversion管理下,文件存放在中心版本库里,这个版本库就像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况,这样就可以通过SVN将数据恢复到以前的版本,并可以查看数据的更改细节。
使用svn,我们一天的工作流程将变成如下几步: 1:每个人从SVN服务器下载项目的最新文档(代码) 2:进入各自的分支,开始工作 3:阶段性工作成果提交 4:下班时间到了,合并各自的分支到服务器主分支 下面就带大家在Linux下安装一个属于自己的版本控制管理系统
1:yum在线安装subversion,连上Linux系统,输入yum -y install subversion,当看到如下提示时,表示安装SVN成功了 2:建立仓库目录,使用svnadmin建立一个版本库,输入如下命令 mkdir -p /var/svn/lemon svnadmin create /var/svn/lemon 3:版本库目录和文件说明 切换到/var/svn/lemon的目录下,我们可以看到生成了如下的文件 conf:仓库配置文件(用户访问账号、权限等) db:所有版本控制的数据文件的目录 format:文本文件,里面只放了一个整数,表示当前文件库配置的版本号 hooks:hook脚本文件 locks:文件库锁定数据的目录 切换到conf目录下,可以看到三个配置文件 4:编辑账号密码文件passwd,添加访问用户和对应的密码 输入:vim/var/svn/www/conf/passwd,编辑文件,在[users]下添加用户名密码对,然后保存退出 5:编辑权限控制文件authz,划分组、添加用户到组并授权 [groups]下配置的是组 = 组用户1、组用户2的一个列表,表示每个组有哪些用户;
[/]:这里的根目录是指项目根目录,而不是系统根目录,具体本例是指/var/svn/lemon @g_admin = rw:表示g_admin这个组的权限,其中r表示读,w表示写,即该组拥有项目根目录的读写权限
[/dev] @g_dev = rw 表示g_dev组拥有对根目录下dev目录下文件的读写权限
6:编辑服务配置文件,让用户和策略生效 输入:vim /var/svn/lemon/conf/svnserve.conf,修改svn仓库配置文件如下 上面的各个配置项说明如下: [general] anon-access = none #不允许匿名用户访问 auth-access = write#通过验证的用户可以读和写,passwd.conf 中用户 password-db = /var/svn/lemon/conf/passwd #用户保存文件 authz-db = /var/svn/lemon/conf/authz #权限管理文件 realm = lemon#认证空间名,版本库所在目录
7:启动svn:svnserve -d -r /var/svn/ 测试是否成功:输入svnserve --version 看到如下信息就表示我们的SVN已经正常启动了
8:初始化版本库文件 我们在/home目录下新建一个测试文件,并使用svn inport命令导入初始文件到版本库
9:接下来使用我们的svn客户端TortoiSVN,在win7下下载我们刚创建的版本库 点击鼠标左键,选择SVN checkout 输入我们的SVN版本库地址: 点击OK,输入我们的用户名和密码 点击OK,我们就可以看到checkout的提示,还有dev下之前建立的文件 以上是Linux下搭建SVN的流程,关注并锁定柠檬班公众号,后面我们再分享怎么使用SVN进行网站自动化发布! 想学习怎么搭建SVN的话,可以加Q群:603317397找毛毛要一下学习资料分享,三天内有效~赶紧哒~~ |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|