`
zhengdl126
  • 浏览: 2542472 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

shell之同步svn代码到os

 
阅读更多

#!/bin/sh
#SVN路径
svn_path_1="http://192.168.1.201:8080/svn/"
#SVN用户名/密码
svn_user="svncheck"
svn_passwd="svncheck"
#工作目录
cur_path="/root/shell/svn"
#临时目录
tmp_path_1="$cur_path/tmp/test"
#配置文件备份目录
bak_path="$cur_path/bakdir"
#上次取下的版本
rev_file="$cur_path/rev_file"
#svn记录
svn_log="$cur_path/svn.log"
#SVN备注记录
svn_msg_log="$cur_path/svn_msg.log"
#获取上次版本号
#test -f "$rev_file" && latest_rev=`cat $rev_file` || latest_rev=1
latest_rev=1
#echo $latest_rev
#开始执行时间
echo `date +%F......%T` >>$svn_log
#取SVN上最新版本号
head_rev=`svn info --username=$svn_user --password=$svn_passwd --no-auth-cache --non-interactive --xml $svn_path_1 | grep "revision" | head -1 |cut -d '"' -f2`
#if [ "$head_rev" -gt "$latest_rev" ];then
	svn export --force --username=$svn_user --password=$svn_passwd --no-auth-cache --non-interactive  $svn_path_1 $tmp_path_1 >>$svn_log
#	svn export --force --username=$svn_user --password=$svn_passwd --no-auth-cache --non-interactive  $svn_path_2 $tmp_path_2 >>$svn_log
	if [ "$?" == 0 ];then
		echo "$head_rev" > $rev_file
	fi
#最终不变的配置文件
#	rm -fr $tmp_path_1/static/domain.inc


#更改权限
	chmod -R 777 $tmp_path_1/protected/runtime

#发布到本机最终目录
	#if [ `ls -al $tmp_path_1|wc -l` != 3 ];then
	cp -pfr $tmp_path_1/*  /var/www/WWW_ROOT_DEV/
#	cp -pfr $tmp_path_1/*  /var/www/WWW_ROOT_DER
#	cp -pfr $tmp_path_1/*  /var/www/WWW_ROOT_DEW/
#发布到192.168.1.252
#	scp -rp $tmp_path_1/*  192.168.1.252:/var/www/WWW_ROOT_DEX
#	fi
	
#发布到本机最终目录
#	if [ `ls -al $tmp_path_2|wc -l` != 3 ];then
#	cp -pfr $tmp_path_2/*  /var/comm_der/
#	cp -pfr $tmp_path_2/*  /var/comm_dev/
#	cp -pfr $tmp_path_2/*  /var/comm_dew/
#发布到192.168.1.252
#	scp -rp $tmp_path_2/*  192.168.1.252:/var/comm_dex
#	fi	

#清空临时目录
	rm -fr $tmp_path_1/*
	
#执行其它的脚本
#	/var/www/scheme/go
#提示消息 
	echo "已取出最新版本$head_rev发布完成!"
#else
#	echo "SVN上没有最新版本!无需发布"
#fi

 
分享到:
评论

相关推荐

    svn同步工具

    SVN,全称为Subversion,是一种版本控制系统,用于...总结来说,"svn同步工具"是提高团队协作效率,管理代码版本,保证项目数据安全的重要工具。通过选择合适的工具,可以简化SVN的操作,使开发者更加专注于编码工作。

    设置本地SVN(Putty)

    它允许开发者在一个中央仓库中存储和跟踪代码更改,确保团队成员之间的同步和协作。而Putty则是一款广泛使用的SSH(Secure Shell)客户端,用于远程登录和管理服务器。在本篇中,我们将探讨如何设置本地SVN,并利用...

    删除.svn文件

    本文将深入探讨“删除.svn文件”这一主题,以及如何解决svn同步时遇到的.svn目录问题。 .svn目录是Subversion在工作副本中创建的隐藏目录,用于存储版本控制的相关信息,包括版本历史、元数据等。每个svn工作副本的...

    secure crt

    4. **版本控制集成**:与Git、SVN等版本控制系统无缝集成,便于代码版本管理。 5. **安全特性**:同样采用强大的加密技术,保护文件的安全。 总之,SecureCRT和SecureFX是IT专业人士的强大工具,它们提供的安全...

    SecureCRT and SecureFX8.5.rar

    4. **版本控制集成**:与Git、SVN等版本控制系统无缝集成,方便代码管理。 5. **安全性**:通过SSH协议进行文件传输,确保数据安全。 三、配置指南 1. **安装与启动**:下载并安装SecureCRT和SecureFX,按照向导...

    SecureCRSecureFXPortable64

    SecureCRT是一款强大的终端模拟器,它支持多种协议,包括SSH(Secure Shell)、Telnet、Rlogin等,使得用户能够安全地连接到远程主机进行会话操作。在Windows、Mac OS X和Linux平台上均有应用。其主要功能包括: 1....

    Git权威指南PDF完整版

    18.1 代码管理之殇/ 253 18.1.1 发布分支/ 253 18.1.2 特性分支/ 256 18.1.3 卖主分支/ 257 18.2 分支命令概述/ 258 18.3 “Hello World”开发计划/ 259 18.4 基于特性分支的开发/ 260 18.4.1 创建分支 user1/getopt...

    winscp winscp工具

    WinSCP是一款基于SSH(Secure Shell)协议的免费开源文件传输程序,尤其在Windows操作系统环境下广受欢迎。它的全名是Windows Secure Copy,能够提供安全、可靠的文件和目录在本地计算机与远程服务器之间的复制功能...

    WinSCP-5.15.5-Setup.rar

    3. **多平台支持**:虽然主要在Windows环境下运行,但通过SSH协议,WinSCP也支持连接到各种操作系统,如Linux、Unix和Mac OS X。 4. **同步浏览**:在本地和远程文件系统之间实现同步浏览,使得用户可以同时查看并...

    Vandyke两大王

    4. **版本控制集成**:可以与Git、SVN等版本控制系统集成,便于代码版本管理。 5. **安全特性**:同样采用SSH2加密,保证文件传输的安全性。 6. **会话管理**:和SecureCRT一样,SecureFX也支持保存和管理多个服务器...

Global site tag (gtag.js) - Google Analytics