服务器a:windows                 服务器b:linux
思路:svn服务器(windows)有代码提交时自动向linux发送指令

软件:putty带的plink.exe,subversion

这里利用的是svn的自带的hook,新建post-commit.bat

/*post-commit.bat    content*/
D:
cd FlyingWork\hooks   (备注:这是svn版本库)
plink.exe -ssh -pw narkii   root@192.168.1.222  -m a.sh(备注:a.sh用于存放命令的文件,向linux发送命令可写于该文件,该文件存放于windows,svn服务器上 )

/*post-commit.bat    content*/

/*a.sh    content*/

cd /usr/local/apache/ (版本控制本地代码)
svn up .

/*a.sh    content*/

备注:
       plink可以采用ssh免密码登陆方式(证书方式,公钥和私钥),这里采用的是直接密码写在文件
       subversion代码更新有两种方式一种是apache(80端口),另外一种是subversion自带的(3690端口),subversion自带的需向系统添加服务。服务添加方法(windows版):
    sc create svnservice binpath= "C:\Program\Subversion\bin\svnserve.exe --service -r   D:\mysvn" displayname= "SVNService" depend= Tcpip start= auto
    binpath如果路径有空格需用\”,否则机器无法识别
Logo

更多推荐