首頁 >php教程 >php手册 >windows svn 上传后 自动部署 到web目录下,svnweb

windows svn 上传后 自动部署 到web目录下,svnweb

WBOY
WBOY原創
2016-06-13 09:27:17917瀏覽

windows svn 上传后 自动部署 到web目录下,svnweb

第一步

把web目录设置为工作目录

"D:\Program Files (x86)\VisualSVN Server\bin\svn.exe" upgrade "D:\yiyun_www\test" --quiet --username chiyj --password chiyj

在DOS下执行。

 

第二步修改文件

D:\yiyun_code\test\hooks下新建文件

post-commit.bat  内容如下

@echo off
SET REPOS=%1
SET USER=%2
SET SVN="D:\Program Files (x86)\VisualSVN Server\bin\svn.exe"
SET DIR="D:\yiyun_www\test"
(call %SVN% update %DIR% --username chiyj --password chiyj --non-interactive)

 

参考 http://www.cnblogs.com/xiezhengcai/archive/2013/11/27/3445457.html

 

svn 自动部署到web服务器设置问题

修改服务器上的钩子程序post-commit,将指定要发布的内容的文件夹导出(export)到tomcat目录下就行了

钩子程序post-commit是在执行commit操作后自动执行的,这样每次commit后都自动执行一次导出操作,保持tomcat文件夹内容就是所要发布的内容

---------------------------------------------------------------------------
补充:
例如你版本库的svn访问地址是10.30.11.12:8080/svn/project1,你想把这个版本库下的/trunk/web文件夹发布到tomcat上,发布到tomcat的文件夹地址是d:/tomcat/opt/web,svn的管理员用户名是abc,密码是12345,那么这个钩子程序应该就是:
svn export 10.30.11.12:8080/svn/project1/trunk/web d:/tomcat/opt/web --force --username abc --password 12345 --no-auth-cache

(本人对linux不熟悉,这行指令如有与linux语法不一致的地方,请参考原理自行修改)
说明:
1、--force 是说强制覆盖d:/tomcat/opt/web这个文件夹,避免这个文件夹不为空时报错
2、--username abc --password 12345 是自动将用户名和密码作为参数传送进去
3、--no-auth-cache 是说不缓存用户名和密码,这是出于安全考虑
4、svn export 是将所指定的url的内容导出到所指定的文件夹去。这里之所以不用update而用export,是因为update会导致生成一个隐藏.svn文件夹,这个文件夹是我们不需要的

当然了,如果整个发布的内容很多的话,建议还是用update,而不用export,因为update只更新有变化的部分,而export将重新导出所有内容,网络消耗比update大。
 

windows下,配置的svn然后上传了,怎把项目指定上传目录下

同步?楼主的问题描述不是很清楚啊,如果是上传整个项目到svn的版本库中,到社区里面去看看相关操作视频吧。

scmeye是目前国内最活跃的软件配置管理社区,欢迎到社区中交流。
skyline是scmeye基于svn二次开发而成的管理工具,skyline是开源软件,旨在帮助广大SCM快速完成配置工作,欢迎前来交流
百度搜索 scmeye 即可
 

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn