一 Svn服务器建立文件
1 安装svn
2 例: 在svn的安装根路径下 建立WepApp文件夹 在此文件夹下 建立shop目录
3 在dos窗口 也就是cmd窗口运行 svnadmin create D://svn/webapp/shop 指令
2 进行服务器端监管
例如 输入 svn://localhost 或者ip地址 访问到相关数据仓库;
基本语法 : (还是在doc 窗口下执行)
Svnserve -d (后台执行) -r (监管目录) 版本仓库路劲;
Svnserve -d -r D;/svn/webapp/shop/
3 权限控制
默认情况下 ,svn是不允许匿名用户上传文件到相关服务器的,所以要更改项目的相关配置文件.在svn根目录下的ocnfig里的19行 将#和空格去掉 将read 改为 write;
二 客户端的安装使用
1 安装客户端svn tortoiseSVN
2 桌面右键→tortoiessvn→第一项 输入svn的服务器地址;
3 进入后点击组织 显示隐藏文件
4 进入后右键检出(chekout) 选择好检出地址 就可以看到.server的隐藏文件
三 svn 图标含义
1 常规图标
1绿色的
含义: 当客户端与服务器端 数据完全一致的时候 显示这个
2 冲突图标
黄色的
含义: 当客户端与服务器端的文件有冲突的时候
3 删除图标 :
红色的错误号
含义 服务器端的文件已经被删除;
4 增加图标
蓝色的加号的图标
含义 当我们编写的文件已经添加到提交队列,显示蓝色的加号的图标
5 无版本控制
蓝色问号
含义 当我们编写的文件没有添加到上传队列时候
6 修改图标
红色的叹号
含义 当客户端文件有修改但未提交
四 svn 版本回退
1 版本回退操作
在svn文件夹中右键 选择tortoise → 跟新至版本(U) (第六个) 然后根据日志查询;
五 svn 版本冲突
1
在实际项目开发中 如果两个人同时修改 某个文件就会产生版本冲突问题
2 解决
修改 冲突的 文件后提交
删除 ==mine 和 ==
六 配置多仓库与权限仓库
1 配置多仓库
在实际开发中可能会同时开发多个项目
通过svnserve进行仓库监管,但是监管指令只能监管一个文件夹 不能同时监管多个目录
解决:
在svn的跟目录下 有一个webapp的目录 它记录svn 上所有的项目(项目总目 录)
所以我们可以监管 svn/webapp 这个目录几个监管多个仓库目录
在doc下 运行 svnserve -d -r D:/svn/webapp
当我们要访问webapp下的项目的时候可以 访问:
Svn://ip地址/shop 或者svn://IP地址/wechat 这样就可以访问webapp的不同项目了;
2 权限控制
通过svn向用户分配svn的可读可写的功能;
如果要使用权限控制有一天前提: 首先要开启权限功能;
在每一个仓库中都有一个conf文件夹里面有是哪个文件
Authz 文件 : 授权文件
告诉那些用户具有那些权限;
Password : 认证文件
表示当前svn中的某个仓库有那些用户 以及相应的密码
默认情况 下 以上两个文件都是禁用的 如需使用需要开启两个文件
开启:
Svnserve.conf文件→
1 注释匿名用户的 可读可写权限 (19行 在前面加一个#)
2 开启认证文件与授权文件 (27 36 行 去掉前面的#)
3 编辑password 定义用户名和密码
用户名 = 密码
4 编辑授权文件 authz
[groups]
组名 = 用户列表
在文件最后
[shop:/]
@admin = rw 代表admin具有可读可写权限
* = r 代表匿名用户只具有可读权限
5 测试功能
七 svn的配置与管理
1 配置自启动服务
由于监管服务都是依赖于doc 窗口的 命令;很麻烦
所以我们将命令 注入到windos自启动服务里;
步骤: 语法: sc create svnservice binpath= ”D:/文件目录svnserve.exe --service -r D:/svn/webapp” start= auto
(文件目录在svn的bin目录下)
Sc create svnservice 创建系统服务,服务名,
2 批处理 文件 .bat 文件
创建stop.bat文件 在里边输入 net stop/start 服务名
创建delete.bar文件 里面输入 sc delete 服务名
只要单击这个文件就会在doc窗口运行 这个命令
八 如何通过钩子程序达到和web 服务器 实时同步
钩子程序 : 与一些版本库事件触发的程序. 默认情况下钩子程序的子目录(版本仓库/hooks/) 中包含各种版本库的钩子模板;
通过编写批量处理文件.bat文件来运行钩子程序 或者可以写sheel脚本来运行
在.bat文件中编辑:
1 设置 服务器端svn路径:
SET SVN=”D:\svn\bin\svn.exe”
2 设置服务器端项目运行目录
SET DIR = “’D:\server\apach\htdocs\shop”
SVN update %DIR%
九 百度BAE云引擎
1 开发者可以给予BAE云引擎 进行php java 等很多程序的 开发调试
BAE地址:http://bce.baidu.com/
我们可以将自己的源代码 放到上面 让全世界的人看到