【开发工具】如何自动更新本地仓库代码(二)

简介: 【开发工具】如何自动更新本地仓库代码(二)
  • 为了保证windows本地一直有最新代码,可利用定时机制,定时从svn或git服务器更新代码,注意解决两个问题:定时、更新代码;


  • 第一篇文章【开发工具】如何自动更新本地仓库代码(一),中,已经探讨了在Windows系统和Linux系统下的定时机制,本文则主要关注于svn库具体的更新操作



svn库的更新


简单粗暴类型,直接update


这部分以windows系统为例来说明。


  • 使用svn命令


@echo off
@echo 1.svn.exe 安装tortoise的目录
set svn_exe=C:\Program Files\TortoiseSVN\bin\svn.exe
set svn_work=D:\PrjCode
"%svn_exe%" update "%svn_work%" --username "qxhgd" --password "pwd_for_qxhgd"


  • 使用TortoiseProc.exe命令


@echo off
@echo 1.svn_home 安装tortoise的目录
@echo 2.svn_work 更新项目文件的目录
set svn_home=C:\Program Files\TortoiseSVN\bin
set svn_work=D:\PrjCode
"%svn_home%"\TortoiseProc.exe/command:update /path:"%svn_work%" /notempfile /closeonend:1


根据本地代码的新旧情况决定是否更新


这部分以Linux系统为例来说明。


#!/bin/sh
revision=`svn info |grep "Last Changed Rev:" |awk '{print $4}'`
echo "the revision is $revision"
URL=`svn info |grep URL: |awk '{print $2}'`
echo "the url is $URL"
svnRevision=`svn info $URL |grep "Last Changed Rev:" |awk '{print $4}'`
echo "the revision in svn is $svnRevision"
if [[ $revision < $svnRevision ]] ; then
echo -e "\033[0;31;40m need svn up \033[0m"
svn up
echo "svn up finish"
exit 1
else
echo -e "\033[0;38;40m no need svn up \033[0m"
exit 0
fi


  • 本文仅考虑了本地代码库存在的情况,实践中还可以根据本地代码库是否存在,来决定执行update抑或是co的动作;


  • 虽然分别以Windows为例或Linux为例,实际上稍微改下脚本,就可以互用(除了TortoiseProc.exe部分)。
相关文章
|
12月前
|
IDE Shell 网络安全
【Git版本控制】使用TortoiseGit一键托管工程代码及版本控制
【Git版本控制】使用TortoiseGit一键托管工程代码及版本控制
166 0
|
12天前
|
JavaScript Java 测试技术
基于SpringBoot+Vue的 在线文档管理系统附带文章和源代码
基于SpringBoot+Vue的 在线文档管理系统附带文章和源代码
21 1
|
21天前
|
开发工具 git
hbuilderX安装git插件→拉取线上gitlab项目
hbuilderX安装git插件→拉取线上gitlab项目
|
8月前
|
存储 JavaScript Java
【已开源】针对 jar 和 vue 一键自动化部署工具,界面好,操作简单!
easy-jenkins是一款对vue和jar的部署工具,操作简单,实行一键部署,内部结构采用流水线形式架构,每次部署,时时提供部署过程,部署记录,界面友好简洁,使用方便,符合用户常规操作
|
9月前
|
编译器 开发工具 git
下载、安装代码版本管理软件Git并复制GitHub代码
本文介绍分布式开源版本控制系统Git的下载、安装,并基于Git实现克隆GitHub中项目代码的方法~
141 1
下载、安装代码版本管理软件Git并复制GitHub代码
|
10月前
|
缓存 移动开发 JavaScript
uniapp打包发布h5项目的缓存问题
uniapp打包发布h5项目的缓存问题
584 0
|
11月前
|
前端开发 JavaScript
nrm轻松管理NPM注册表的工具与.npmrc定制化项目的依赖管理
NPM 是前端开发中一个不可或缺的工具,用于管理和安装各种依赖包。但是,有时候我们需要从不同的 NPM 注册表中安装包,例如,从 `npmjs.org`、`淘宝镜像`或`私有注册表`中安装。这时候,一个方便的管理工具就显得非常重要了,而 nrm 就是这样一个工具。
156 0
|
消息中间件 JavaScript 小程序
针对 jar 和 vue 的一键自动化部署工具,界面友好,操作简单(已开源)
针对 jar 和 vue 的一键自动化部署工具,界面友好,操作简单(已开源)
|
存储 JavaScript 前端开发
针对 jar 和 vue 的一键自动化部署工具,界面友好,操作简单(已开源)2
针对 jar 和 vue 的一键自动化部署工具,界面友好,操作简单(已开源)2
|
数据可视化 程序员 测试技术
Gitlab上手指南(六)|如何利用vscode工具快速的解决代码冲突
相信很多用git的程序员对于git冲突都很恐惧。当你项目马上要上线,测试让你把主分支的代码合并一下,要做一个回归测试,然后你合并的时候,一堆冲突代码,直接让你头皮发麻。到底应该处理哪一个冲突,哪一段代码
4495 1

热门文章

最新文章