0

我想知道自上次结帐以来某个文件是否发生了更改-在詹金斯从 svn 中检查了我的存储库之后。由于构建过程从 jenkins 更新工作区开始,因此我需要找出并且无法通过svn status -u检查。

这里的背景是我想检查包含项目要求(requirements.txt)的文件是否被更改,在这种情况下更新环境(virtualenv)。

我是否必须存储上次结帐的修订号并将其与svn log requirements.txtsvn diff的输出与该修订进行比较?

4

1 回答 1

1

我会试着在这里模仿你的情况

z:\j-wc>svn ls -v .
      2 Badger                окт 19 05:40 ./
      2 Badger             13 окт 19 05:40 a.txt
      2 Badger             14 окт 19 05:40 requirements.txt

j-wc 是工作副本,更新到比当前 HEAD 更旧的 repo 版本

z:\j-wc>svn ls -v file:///Z:/repo/trunk
      5 Badger                окт 19 05:44 ./
      2 Badger             13 окт 19 05:40 a.txt
      5 Badger             39 окт 19 05:44 b.txt
      4 Badger             21 окт 19 05:43 requirements.txt

前一段时间

如果(之前svn up)我必须知道“我会在 requirements.txt 中得到更改吗?” 我会尽力

z:\j-wc>svn diff -r "BASE":"HEAD" requirements.txt | wc -l. 如果发生更改,则 diff 输出结果(WC 内部与本地文件的差异允许使用永久符号修订名称 BASE+HEAD),无更改 == 无输出

z:\j-wc>svn diff -r "BASE":"HEAD" requirements.txt
Index: requirements.txt
===================================================================
--- requirements.txt    (working copy)
+++ requirements.txt    (revision 5)
@@ -1,2 +1,3 @@
 Req 1
 Req 2
+Req 3
于 2012-10-19T00:22:33.873 回答