我在.NET中编写了一个定制的部署例程,它执行以下操作:
- 对我的代码执行一些先前的检查(除其他外)。此代码放置在本地文件夹中。
- 如果所有测试都正常,它将将此代码传输到生产服务器。
现在,我的问题是:作为“先前的检查”,我想测试我的本地文件夹是否包含来自我的Tortoise SVN存储库的最新更新。.svn 文件夹中是否有任何信息来检查是否需要更新,或任何其他方式来执行此操作?
我在.NET中编写了一个定制的部署例程,它执行以下操作:
现在,我的问题是:作为“先前的检查”,我想测试我的本地文件夹是否包含来自我的Tortoise SVN存储库的最新更新。.svn 文件夹中是否有任何信息来检查是否需要更新,或任何其他方式来执行此操作?
.svn 文件夹中是否有任何信息可以检查是否需要更新
不
或任何其他方式这样做?
是的。
您必须从您的应用程序中使用svn status -u
(“显示更新”)(如果您有 CLI svn-client)并检查输出。
从svn help status
The out-of-date information appears in the ninth column (with -u):
'*' a newer revision exists on the server
' ' the working copy is up to date
样本:
>svn status -u wc
M 965 wc/bar.c
* 965 wc/foo.c
A + - wc/qax.c
Status against revision: 981
wc/bar.c 包含本地修改 wc/foo.c 在存储库中更新 wc/qax.c 在本地添加并准备提交
如果没有本地更改和存储库更改
>svn status -u
Status against revision: 37
你不会得到文件列表,只有状态行