windows系统下用python更新svn和Git

转载请标明出处:http://www.cnblogs.com/zblade/python

最近在思考怎么实现python的一键打包,利用python的跨平台特性,能够实如今windows和mac下都可执行的特色。要对游戏工程进行打包,那么就须要将游戏工程进行更新,而后才执行打包。目前项目中采用了SVN和Git并行开发的模式,那么就须要既更新svn,又要更新Git,因此调研了一下如何用Python脚原本执行相关的命令,更新SVN和Git对应的工程。git

对于SVN,首先须要配置SVN的相关信息: SVN软件所在地址,SVN的url路径,本地svn工程的路径,以及svn操做的选项,能够单独写一个配置的python脚本,简易版本以下:windows

# -*- coding: utf-8 -*- setting = { 'svn': r'D:\SVN\bin', 'url':'your svn path ', #svn的url, 能够在svn check中查找到 'dist':'your local svn project path', #本地的svn工程所在路径,注意python中路径用左向斜杠,也能够前面加r,而后用右向斜杠 'closeOption':' /closeonend:1' } # /closeonend:0 不自动关闭对话框 # /closeonend:1 若是没发生错误则自动关闭对话框 # /closeonend:2 若是没发生错误和冲突则自动关闭对话框 # /closeonend:3 若是没有错误、冲突和合并,会自动关闭 # /closeonend:4 若是没有错误、冲突和合并,会自动关闭

对于Git来讲,执行完Git的安装后,在系统的环境变量中,在path中增长Git的路径,就能够在cmd中执行git的相关命令:svn

 

而后在命令行中输入git,能够获得:url

说明Git安装正确,同时能够支持pull/push等基本命令操做,那么在python脚本中也能够执行这样的操做,写了一个简易版本的python脚本,集合svn和git的更新于一体:#!/user/bin/python#coding = utf-8spa

 import os import time import configs dist = configs.setting['dist']
#先切换到git工程所在目录 os.chdir(
'D:/client')
#git pull命令 cmd
= 'git pull' result = os.system(cmd) os.chdir(configs.setting['svn']) #此处这个path后面必须有空格,否则svn update会path路径报错
#svn revert 命令
cmd = 'TortoiseProc.exe /command:revert /path ' + dist + ' /notempfile' + configs.setting['closeOption'] result = os.system(cmd)
#svn update命令 cmd
= 'TortoiseProc.exe /command:update /path ' + dist + ' /notempfile' + configs.setting['closeOption'] result = os.system(cmd) if result == 0: print('svn update succes') else: print('svn update fail')

在命令行中执行,能够获得:命令行

后续能够在此基础上进一步的完善和迭代,今天的小记就到这儿~3d

相关文章
相关标签/搜索