Linux指令获取SVN最新版本号,利用shell脚本获取svn标高

需求来源:在linux系统下执行python脚本时,有时需要传递SVN的最新标高作为参数,原因是因为Python里面会将代码更新到标高内容,这个时候就需要获取SVN的Revision

1、首先svn info指令会把当前的svn信息展示出来,其中就有Revision

G:\Main>svn info
Path: .
Working Copy Root Path: G:\Main
URL: svn://-/-t/svnroot/-/-/-/Main          #重要信息已用“-”屏蔽
Relative URL: ^/-/-/Main
Repository Root: svn://-.-.-.-/export/svnroot/-
Repository UUID: --
Revision: 468875          #这是我们需要的信息
Node Kind: directory
Schedule: normal
Last Changed Author:
Last Changed Rev: 468874
Last Changed Date: 2022-04-28 11:23:04 +0800 (周四, 28 42022)

2、接下来需要获取Revision,输出的话可以用:

svn info |grep Revision: |awk '{print $2}'

但是我是用shell脚本去执行的Python文件,所以需要一个变量存储这个标高,可以这样:

#!/bin/bash
#sh build.sh

#set svn url
Url=svn://----/---         #自己的svn目录
Revision=""                #存标高的变量

#get svn Revision
Revision=$(svn info ${Url}} |grep Revision: |awk '{print $2}')  #awk命令使用自行百度一下
echo ${Revision}           #输出标高检查一下

3、接下来传递参数的时候传递 ${Revision}即可,例如:

Python -u build.py ${Revision}  #运行build文件,将标高作为参数传递

备注:
内容只针对某些情景下的需求有用,可当做参考。
The content is only useful for the needs of some situations and can be used as a reference.

Logo

更多推荐