apt-get install subversion
mkdir -p /home/svn p是跨级创建目录
svnserve -d -r /home/svn 启动svn
需要杀掉svn服务是 pkill svnserve
查看是否启动了svn
netstat -lnt|grep 3690
查看进程
创建项目版本库
进入配置文件
查看svnserve.conf 文件 查看时 过滤注释内容
修改svnserve.conf文件
每一行前方不能有空格,否则会出现 Option expected错误!
然后再查看 也是过滤到注释内容
修改passwd文件 添加两个用户
修改authz文件
然后杀掉进程 再重启
然后检查 svn://192.168.1.139/test
文件夹里新建一个文件
将db 递归修改权限
查看www目录
重写index.php
在var/www/html 下面创建一个目录 myweb 检查版本库 测试 更新后自动更新到该目录
由于版本库在同一服务器 所有可以用localhost 要是不在一起可以用ip来表示
编辑钩子文件
复制post-commit.tmpl 文件生成一个新的文件 post-commit
测试 手动更新 var/www/html/myweb中的文件
[email protected]:/var/www/html# ls
index.php myweb
[email protected]:/var/www/html# svn update /var/www/html/myweb --username 'server'--password '654321'
正在升级 'myweb':
认证领域: <svn://localhost:3690> 40b801df-ee12-4ba6-be1d-791240f6853d
“server--password”的密码: ******
认证领域: <svn://localhost:3690> 40b801df-ee12-4ba6-be1d-791240f6853d
用户名: cheer
“cheer”的密码: ******
-----------------------------------------------------------------------
注意! 你的密码,对于认证域:
<svn://localhost:3690> 40b801df-ee12-4ba6-be1d-791240f6853d
只能明文保存在磁盘上! 如果可能的话,请考虑配置你的系统,让 Subversion
可以保存加密后的密码。请参阅文档以获得详细信息。
你可以通过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,
来避免再次出现此警告。
-----------------------------------------------------------------------
保存未加密的密码(yes/no)? y
U myweb/index.php
更新到版本 3。
跳过“654321”
更新概要:
更新 'myweb' 到版本 3。
冲突概要:
跳过的路径:1
[email protected]:/var/www/html#
此时 就更新了
编辑 post-commit 钩子文件
#!/bin/bash
WEB=/var/www/html/myweb/
export LANG=en_US.UTF-8
svn update $WEB --username 'server' --password '654321'
在桌面的文件夹编辑文件
然后提交该文件
然后刷新 浏览器 更新到web目录了
当上传tp框架时
本地和svn服务器版本库 都没有home文件夹
服务器由于运行了 所以自动生成了 home模块
如果在putty将 myweb中thinkphp 删掉 再检出 就会报错