svn-多个项目版本库和自动同步更新post-commit
由于项目测试需求,需要远程服务器上使用svn做版本控制.
需求:
1,项目test1,项目test2,各自独立版本库,各自独立用户权限,便于项目管理
2,同步提交,本地svn提交至版本库后,服务器上的web根目录上的项目同步更新。达到本地update,浏览器访问实时生效
步骤:
1,安装svn 过程略去
2,配置项目
一,创建版本库
创建多个项目的版本库
工作目录
/var/www/
项目1:svnadmin create /var/www/svn/test1
项目2:svnadmin create /var/www/svn/test2
二,修改项目配置
===============================
cd /var/www/svn/test1
目录权限
vi conf/authz
[/]
*=rw
账号密码
vi conf/passwd
user1=123456
主配置
vi conf/svnserve.conf
如果还报127,记得把最下面这句注释或删掉
#mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf
svnserve -d -r /var/www/svn/test1
svnserve -d -r /var/www/svn/test2
正确的是
svnserve -d -r /var/www/svn/
ps -ef|grep svnserve //查看进程是否正常
如果已经有其他进程用命令杀掉kill pid
上面是项目test1的配置,项目test2的配置也和上面大体一致,不在赘述。
4,导入项目
mkdir /var/www/test1
touch test1.txt
midir /var/www/test2
touch test2.txt
svn import /var/www/test1 file:///var/www/svn/test1 -m "导入项目1"
svn import /var/www/test2 file:///var/www/svn/test2 -m "导入项目2"
5,checkout检出
测试一下。把/var/www/test1 和/var/www/test2 删掉
cd /var/www
svn checkout svn://IP/test1
svn checkout svn://IP/test2
看test1,和test2目录果然下载下来了。
然后我到我的windows本地上也checkout一下,地址同样是上面的两个
输入账号密码,也成功下载了文件
我们在test1,test2其中添加提交b.txt,c.txt,
然后到服务器上看/var/www/test1,和 test2中果然已经实时更新出现了。
我的http://test1.aaa.com 和http://test2.aaa.com
分别对应的是/var/www/test1和/var/www/test2
清楚了web的目录指向后,看到的效果自然也就是所谓的实时更新了。
#每分钟更新,并记录日志
#*/1 * * * * /root/svn_update.sh >> /tmp/log/svn_update.log
#每5分钟更新,不记录日志。
*/5 * * * * /root/svn_update.sh
vi svn_update.sh
#!/bin/bash
cd /var/www/test1 && /usr/bin/svn up
cd /var/www/test2 && /usr/bin/svn up
参考:http://blog.csdn.net/honeyjimmy/article/details/24431713
常见错误:http://www.2cto.com/os/201407/322026.html
svn-多个项目版本库和自动同步更新post-commit的更多相关文章
- 【转】SVN管理多个项目版本库
转载地址:http://blog.163.com/zhangxuemin_zy/blog/static/10178565520115704031799/ SVN管理多个项目版本库: 安装SVN服务 ...
- SVN管理多个项目版本库 (windows,linux 通用)
SVN管理多个项目版本库: . 安装SVN服务器软件,路径: C:\Program Files\Subversion . 在D盘创建svn根目录D:\SVN-CM . 在D:\SVN-CM下创建SVN ...
- android stuido 在线安装svn插件,添加版本库无响应
问题:android stuido 中在线安装svn插件,添加版本库无响应. 原因: 由于android stuido 版本较高,在线安装1.6x 版本的svn,添加版本库一直没有响应,最后卡死.. ...
- svn"重新定位"提示版本库uuid不匹配
svn"重新定位"提示版本库 uuid不匹配: 版本库 "https://wolfcome110/svn/andon" 的 uuid是 "d52648 ...
- SVN基本配置--创建版本库(图文并茂)
SVN基本配置简 上一篇介绍了VisualSVN Server和TortoiseSVN的下载,安装,汉化.这篇介绍一下如何使用VisualSVN Server建立版本库,以及TortoiseSVN的使 ...
- svn add 添加到版本库
转 svn add-添加到版本库 常用操作1.添加一个文件到工作拷贝:$ svn add foo.c 2.当添加一个目录,svn add缺省的行为方式是递归的:$ svn add testdir 3. ...
- 取消SVN感叹号即去除版本库
之前不小心直接将版本库 的内容检出 到桌面,后才发现桌面上的文件 都变成了问号,本来也以为没有多大问题,删除 .svn 即可,可是删除所有的.svn后,桌面上还是显示问号,刷新了很多次,还重启电脑 了 ...
- svn创建多个版本库
mkdir /pangbing cd /pangbing/ svnadmin create 1 svnadmin create 2 svnadmin create3 启动时候这样启动 svnserve ...
- 如何利用svn自动同步更新到网站服务器
我们最终的目的是:当本地提交后,SVN服务器自动更新服务器端指定WEB目录内的文件 实现方法: 找到服务器端 SVN版本库所在的目录(目录名称是Repositories),这个目录是在安装Visual ...
随机推荐
- 【原创】我所理解的自动更新-APP发布与后台发布
发布后台 创建渠道:添加新的渠道,设置渠道名称,自动生成渠道id. 查看渠道:查看渠道基本信息,渠道app版本号,资源版本号,是否开启更新. 创建/更新APP:选择打包ios,androi ...
- 【转】PowerShell入门(十一):编写脚本模块
转至:http://www.cnblogs.com/ceachy/archive/2013/03/08/PowerShell_Script_Module.html 现在通过编写模块就可以在PowerS ...
- 初探Spring Batch
此系列博客皆为学习Spring Batch时的一些笔记: 为什么我们需要批处理? 我们不会总是想要立即得到需要的信息,批处理允许我们在请求处理之前就一个既定的流程开始搜集信息:比如说一个银行对账单,我 ...
- 通过正则表达式实现简单xml文件解析
这是我通过正则表达式实现的xml文件解析工具,有些XHTML文件中包含特殊符号,暂时还无法正常使用. 设计思路:常见的xml文件都是单根树结构,工具的目的是通过递归的方式将整个文档树装载进一个Node ...
- Autumn is a second spring when every leaf is a flower.
Autumn is a second spring when every leaf is a flower. 秋天即是第二个春天,每片叶子都是花朵.——阿尔贝·加缪
- Linux上从Java程序中调用C函数
原则上来说,"100%纯Java"的解决方法是最好的,但有些情况下必须使用本地方法.特别是在以下三种情况: 需要访问Java平台无法访问的系统特性和设备: 通过基准测试,发现Jav ...
- 【转】Eclipse快捷键 10个最有用的快捷键
转载地址:http://www.open-open.com/bbs/view/1320934157953 Eclipse中10个最有用的快捷键组合 一个Eclipse骨灰级开发者总结了他认为最有用但 ...
- android 加载网络图片
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...
- d3.js读书笔记-1
d3.js入门 d3入门 D3是一个强大的数据可视化工具,它是基于Javascript库的,用于创建数据可视化图形.在生成可视化图形的过程中,需要以下几步: 把数据加载到浏览器的内存空间: 把数据绑定 ...
- Git命令行下解决冲突
使用Git时,在pull.merge.rebase的过程中,经常会遇到conflict的情况. 遇到conflict时,以上处理过程会终端,并且命令行中显示(xxx|MERGING)的状态(Windo ...