http://www.bestphper.cn/article-132.html
通过SVN进行版本库管理,每次提交后,都要在SVN服务器更新最新上传的版本到WEB目录进行同步。操作比较烦琐,而且效率也低。使用SVN钩子脚本进行WEB目录同步,可很好的解决这方面的问题。由于测试机器与SVN库都在同一台机器里,所以处理起来比较方便。
svn项目下面有hooks目录,里面存放的是全部的钩子脚本的模板
post-commit.tmpl 为客户端commit提交后触发
以下是windows和linux下自动更新版本库的方法:
在SVN 项目版本库的存储目录下的hooks 目录,新建立一个post-commit.bat 文件:
windows:
@echo off
SET REPOS=%1
SET REV=%2
SET DIR=%REPOS%/hooks
SET PATH=%PATH%;
SET WORKING=E:/www/o135
svn update %WORKING% --username o135 --password o135123
注意:以上方法必须把SVN服务器安装目录下的bin加入到path路径(环境变量)中。SVN通过setup进行安装,默认会将bin目录增加到path路径中,如果通过压缩包进行安装,必须要手动增加。
要想知道此脚本是否出错,可在cmd命令行里输入:C:\Documents and Settings\Administrator>e:/svn/hooks/post-commit.bat 进行测试。出现以下信息则表明脚本成功执行:
C:\Documents and Settings\Administrator>e:/svn/hooks/post-commit.bat
正在升级 ‘E:\www\o135′:
版本 15。
红色部分是版本库的位置,大家按实际位置进行修改。
以后不管那台机器,只能通过svn commit命令,都会触发此脚本,自动同步web目录中。
linux:
linux下原理跟windows是一样的。只是新建的文件名不一样。
在SVN 项目版本库的存储目录下的hooks 目录,新建立一个post-commit文件:
vi post-commit
增加以下代码:
#!/bin/sh
WEB=/home/data/o135
export LANG=en_US.UTF-8
svn update $WEB --username o135 --password 'o135123'
保存,退出。。
给予此脚本的权限:
chmod 777 post-commit
测试一下,看脚本是否有权限问题
./post-commit
以后每次客户端提交操作,就会自动运行该脚本。
相关推荐
在Windows XP下,Subversion服务器有时候看起来发送损坏的数据。 跟踪Subversion客户端和Apache服务器通话最好的方法是什么? 我刚刚编译了二进制分发版本,当我尝试检出Subversion,我得到一个“Unrecognized URL...
在Windows XP下,Subversion服务器有时候看起来发送损坏的数据。 跟踪Subversion客户端和Apache服务器通话最好的方法是什么? 我刚刚编译了二进制分发版本,当我尝试检出Subversion,我得到一个“Unrecognized URL...
主要应用场景:文件管理系统、文档安全管理系统、分布式文档管理系统、协同办公系统、电子书、软件接口管理系统、自动备份软件、网页版SVN仓库、网页版GIT仓库、FTP客户端、SFTP客户端、SMB客户端、Linux系统远程...
目录 译者序 前言 序言 读者 怎样阅读本书 本书约定 排版习惯 图标 本书组织结构 Subversion 1.1的新特性,svn客户端和linux下命令行。 目录 1. 简介 1.1. 什么是 TortoiseSVN? 1.2. TortoiseSVN 的历史 1.3. ...
但是 SVN 通过 SVN ROOT 目录下的脚本,提供了相应功能扩充的接口,不但可以完成精细的权限控制,还能完成更加个性化的功能。总体成本:★★★★★SVN 是开发源码软件,无需支付购买费用。技术支持:★★★同样因为 ...
Microsoft Web 文件夹 Nautilus,Konqueror WebDAV文件系统实现 WebDrive,NetDrive Mac OS X Linux davfs2 D. 第三方工具 E. Copyright 索引 插图清单 1. Subversion的架构 1.1. 一个典型的客户/服务器系统 1.2. ...
它内置于PHP中,可与Git和SVN一起使用,并且可在Linux和Windows上运行。 数据库版本控制模块当前可用于MySQL,PostgreSQL和MS SQL数据库。 它还使用了灵活的挂钩系统,可以进行释放操作。 挂钩可以独立于版本控制...
基于Python的依托豆瓣平台制作的一个数据分析系统.zip 作品简介: 豆瓣探索者这个作品是依托豆瓣这个平台制作的一个数据分析系统。本作品使用Python的...Linux下的:Redis、MongoDB、宝塔Linux面板、SVN Server等。
Web 形式的项目管理系统通过“项目(Project)”的形式把成员、任务(问题)、文档、讨论以及各种形式的资源组织在一起,大家参与更新任务、文档等内容来推动项目的进度,同时系统利用时间线索和各种动态的报表形式...
MxsDoc是基于Web的文件管理系统,支持权限管理、历史版本管理、Office编辑、Office预览、在线解压缩、文件分享、文件加密、远程存储、跨仓库推送、跨服务器推送、秒传、断点续传、智能搜索、文件备注、本地自动备份...
资产管理添加了阿里云主机自动拉取入库功能,像其他腾讯云,华为云等实现方法都差不多就没一一实现,本来想写一些关于docker管理的东西,但感觉没什么实际应用场景,现在k8s编排这么流行,就没写,不过在我的博客...
可以用命令行进行导出操作,这样就能让我写个脚本,从svn里checkout某个目录下的所有设计文件后,导出图片,打包后用邮件发到项目经理,工程师甚至客户那; 跨平台,Balsamiq Mokups是用Flex和Air实现的,所以在Mac...
PyCharm是由JetBrains公司推出的一款强大的Python集成开发环境(IDE)。它为Python开发者提供了一套完整的工具,包括代码编辑器、调试器、...PyCharm不仅功能强大,而且支持多种操作系统,包括macOS、Windows和Linux
Eclipse是一款跨平台的IDE,可以在Windows、Linux和Mac OS X等操作系统上运行。 Eclipse支持多种编程语言,包括Java、C/C++、Python、PHP等。 Eclipse具有强大的代码编辑功能,包括代码自动补全、语法高亮、代码折叠...
主要应用场景:文件管理系统、日志管理系统、网页版SVN仓库、网页版GIT仓库、电子书、软件接口管理系统、远程桌面管理、自动备份软件。 [user: guest/guest] 全平台支持:Linux,Windows,Mac. 开源协议: 采用GPL ...
选择项目目录结构:一个项目开始的时候,选择一个合适的项目目录结构,是一件很重要的事情,可能你会很习惯由IDE自动创建的目录结构,如Elcipse或JB,但有些时候,这样的目录结构可能并不是最好的,所以,在项目开始...
2、LINUX下启动TDS管理界面到操作端显示 383 3、命令模式启动与停止方式 384 4、TDS日志文件路径 384 5、TDS WEB访问路径及其默认账户 384 6、命令模式导出与导入LDIF 385 7、 界面形式迁移TDS/LDAP 385 8、TDS处于...