centos svn服务器搭建 多账号多项目不同权限配置 hook配置 项目提交自动同步 测试及生产环境配置
2017-10-17 14:00
666 查看
内容分为两大部分:1.svn服务器搭建配置 2.svn hook配置项目提交自动同步到测试环境,及测试生产环境配置。
一,服务器配置
1、安装svn:
yum install subversion
svn –version
如果弹出svn版本信息说明安装成功
2、分别创建不同项目的版本库比如ios,android,www等
svnadmin create /var/svn/ios
svnadmin create /var/svn/android
svnadmin create /var/svn/www
cd /var/svn
ls
然后可以看到:
蓝色目录即为创建的项目仓库
3、查看项目当中的内容如www目录 cd www/conf 可以看到有三个文件,authz,passwd,svnserve.conf
为了统一管理不同项目不同svn用户的不同访问权限,需要把仓库当中的authz 和passwd两个文件拷贝到外层svn主目录中,如上图。
分别对每个项目仓库进行配置,比如www项目:
vi /var/svn/www/conf/svnserve.conf
分别找到,并改为如下:
anon-access = none #禁止匿名访问
auth-access = write
password-db = /var/svn/passwd #统一用这个文件配置密码
authz-db = /var/svn/authz #统一用这个文件配置权限
realm = www #权限域名,在authz里面配置权限使用可以与项目名相同
如果是android就用:
vi /var/svn/android/conf/svnserve.conf
4、配置svn帐号及访问权限:
vi var/svn/authz
如下:
注意[www:/] 这里的www,android,python是与刚才项目中配置的realm对应的
配置中的各个组分别有各个项目的访问权限,boss有所有项目权限
然后配置密码:
vi /var/svn/passwd
如图,分别列出来配置就行了:
启动svn:
systemctl start svnserve
设置开机启动:
systemctl enable svnserve
查看运行状态:
netstat -ntl
如图看到有端口号3690就说明svn服务器正常运行了。
二,在同一个服务器上创建测试环境与生产环境,由于两者环境完全相同,则提交代码到生产环境后基本就没问题了,使用方便。
1. 思路是这样,比如对于www网站项目,在服务器创建两个svn仓库,一个作为生产环境,一个作为测试环境,测试环境需要用svn hook自动同步,这样commit之后测试环境直接生效,测试完成后再对生产仓库update即可,下面创建:
svn co svn://localhost/www /project/www
svn://localhost/www是svn仓库, /project/www是生产环境项目路径 按提示输入svn帐号密码
svn co svn://localhost/www /project/wwwTest
后面一个可以作为测试环境项目路径
2.配置svn hook 项目自动同步:
vi /var/svn/wwwTest/hooks/post-commit
把上面代码拷贝进去保存 注意svn帐号密码要正确
修改权限
chmod 755 /var/svn/wwwTest/hooks/post-commit
此时再往www仓库提交代码就会自动同步到 /project/wwwTest 目录中。
3.二级域名配置,比如配置test.baidu.com这种网址作为测试网址:
如果是使用的阿里云域名,则需要配置test二级域名解析如图:
其中记录值是ip地址,如果是其它平台备案的域名则需要去相应平台更改一下支持
4.配置nginx根据二级域名解析到wwwTest测试项目:
打开nginx配置文件:
一般路径在:/etc/nginx/nginx.conf 或者
/etc/nginx/conf.d/….conf
把server区块再从新拷贝粘贴到原有server下面
修改 server_name为: *.test.baidu.com; #要注意这个域名有没有在上一个server里面包括,包括了要从上一个当中去除掉
修改 root为: /project/wwwTest;
重启nginx:
systemctl restart nginx
5.此时打开浏览器输入网址则访问www目录,输入test….com 访问wwwTest目录,本地svn提交直接同步到wwwTest目录,测试环境直接生效,要提交生产环境直接svn up即可。
一,服务器配置
1、安装svn:
yum install subversion
svn –version
如果弹出svn版本信息说明安装成功
2、分别创建不同项目的版本库比如ios,android,www等
svnadmin create /var/svn/ios
svnadmin create /var/svn/android
svnadmin create /var/svn/www
cd /var/svn
ls
然后可以看到:
蓝色目录即为创建的项目仓库
3、查看项目当中的内容如www目录 cd www/conf 可以看到有三个文件,authz,passwd,svnserve.conf
为了统一管理不同项目不同svn用户的不同访问权限,需要把仓库当中的authz 和passwd两个文件拷贝到外层svn主目录中,如上图。
分别对每个项目仓库进行配置,比如www项目:
vi /var/svn/www/conf/svnserve.conf
分别找到,并改为如下:
anon-access = none #禁止匿名访问
auth-access = write
password-db = /var/svn/passwd #统一用这个文件配置密码
authz-db = /var/svn/authz #统一用这个文件配置权限
realm = www #权限域名,在authz里面配置权限使用可以与项目名相同
如果是android就用:
vi /var/svn/android/conf/svnserve.conf
4、配置svn帐号及访问权限:
vi var/svn/authz
如下:
注意[www:/] 这里的www,android,python是与刚才项目中配置的realm对应的
配置中的各个组分别有各个项目的访问权限,boss有所有项目权限
然后配置密码:
vi /var/svn/passwd
如图,分别列出来配置就行了:
启动svn:
systemctl start svnserve
设置开机启动:
systemctl enable svnserve
查看运行状态:
netstat -ntl
如图看到有端口号3690就说明svn服务器正常运行了。
二,在同一个服务器上创建测试环境与生产环境,由于两者环境完全相同,则提交代码到生产环境后基本就没问题了,使用方便。
1. 思路是这样,比如对于www网站项目,在服务器创建两个svn仓库,一个作为生产环境,一个作为测试环境,测试环境需要用svn hook自动同步,这样commit之后测试环境直接生效,测试完成后再对生产仓库update即可,下面创建:
svn co svn://localhost/www /project/www
svn://localhost/www是svn仓库, /project/www是生产环境项目路径 按提示输入svn帐号密码
svn co svn://localhost/www /project/wwwTest
后面一个可以作为测试环境项目路径
2.配置svn hook 项目自动同步:
vi /var/svn/wwwTest/hooks/post-commit
#!/bin/sh export LANG=en_US.utf8 SVN_PATH=/usr/bin/svn WEB_PATH=/huizai/wwwTest $SVN_PATH update $WEB_PATH --username 'username' --password '123456' --no-auth-cache
把上面代码拷贝进去保存 注意svn帐号密码要正确
修改权限
chmod 755 /var/svn/wwwTest/hooks/post-commit
此时再往www仓库提交代码就会自动同步到 /project/wwwTest 目录中。
3.二级域名配置,比如配置test.baidu.com这种网址作为测试网址:
如果是使用的阿里云域名,则需要配置test二级域名解析如图:
其中记录值是ip地址,如果是其它平台备案的域名则需要去相应平台更改一下支持
4.配置nginx根据二级域名解析到wwwTest测试项目:
打开nginx配置文件:
一般路径在:/etc/nginx/nginx.conf 或者
/etc/nginx/conf.d/….conf
把server区块再从新拷贝粘贴到原有server下面
修改 server_name为: *.test.baidu.com; #要注意这个域名有没有在上一个server里面包括,包括了要从上一个当中去除掉
修改 root为: /project/wwwTest;
重启nginx:
systemctl restart nginx
5.此时打开浏览器输入网址则访问www目录,输入test….com 访问wwwTest目录,本地svn提交直接同步到wwwTest目录,测试环境直接生效,要提交生产环境直接svn up即可。
相关文章推荐
- SVN – 搭建 SVN 服务器 && 多项目分别建立版本库 && 同步至生产环境
- SVN – 搭建 SVN 服务器 && 多项目分别建立版本库 && 同步至生产环境
- python程序如何在生产和测试环境自动调用对应的配置文件
- 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
- 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
- centOs6.5 SVN 服务器搭建并实现提交自动同步到web服务器
- 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
- 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
- linux 搭建SVN服务器,为多个项目分别建立版本库并单独配置权限
- 通过maven管理项目的生产、开发和测试环境的配置文件
- windows环境下svn本地提交后自动更新提交到服务器的项目根目录
- Web开发、测试环境搭建(LAMP、SVN服务器、Laravel项目创建)
- 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
- 从生产环境同步代码到测试服务器
- Maven 利用Profile属性配置,生成不同环境(生产、测试)下的发布包
- Javaweb第一课:配置Tomcat服务器、搭建web开发环境、管理webapps项目
- 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
- 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
- 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换