svnversion输出但是在外部递归

时间:2013-09-11 20:46:54

标签: svn svn-externals

我正在尝试通过URL,修订版和脏/清除状态来识别具有外部(和子外部)的SVN项目的本地(非自动构建服务器)构建。整体结果只是干净或某些地方很脏,我不在乎什么是脏的。这样的程序/脚本已经很方便吗?或者我必须不那么懒,自己写一下......(我已经不够搜索了一下)。简而言之,svnversion的奇特版本,它知道外部。

我试过了svnversion。这是我的Cygwin shell中的一个编辑副本。

altendky@ly /svn/myProject.clean
$ svnversion
606

altendky@ly /svn/myProject.clean
$ svn propget svn:externals
^/../the_canopen_library@223 libs/canopen

altendky@ly /svn/myProject.clean
$ echo blue >> libs/canopen/wrapper/CANOpenGuard.c

altendky@ly /svn/myProject.clean
$ svnversion
606

altendky@ly /svn/myProject.clean
$ echo blue >> src/App_Main.c

altendky@ly /svn/myProject.clean
$ svnversion
606M

altendky@ly /svn/myProject.clean
$ svnversion --version
svnversion, version 1.8.3 (r1516576)
   compiled Aug 30 2013, 11:03:40 on i686-pc-cygwin

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

altendky@ly /svn/myProject.clean
$

1 个答案:

答案 0 :(得分:1)

您是否尝试阅读svnversion -h并使用外部测试WC?我明白了 - 不,因为在WC内部存在或不存在exernals确实没有改变结果

  

如果工作副本是,则版本标识符将是单个数字   单个修订,未修改,未切换且具有URL   匹配TRAIL_URL参数。如果工作副本不正常了   版本标识符会更复杂

使用

内的externals清理签出repo-URL
>dir /B
core_mod.txt
lib

(lib是外国仓库中的目录 - 外部)

对于WC的根,

svnversion按预期生成

>svnversion
7

如果WC中的任何修改会破坏“vanilla”状态,版本标识将比纯单个数字更复杂:

A[:B[MSP]]