gpt4 book ai didi

linux - if 将 tortoiseSVN 更新检查到 linux bash 的条件

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:19:53 24 4
gpt4 key购买 nike

我正在将 SVN 服务器用于 linux 计算机。我正在尝试开发 bash 代码以自动进行编译。问题是如果我的 SVN 服务器没有更新,我不想编译这些文件。所以我做的第一件事就是检查更新。

这样:

if svn update; then

...

fi

问题是,即使没有更新,它也会进入 if 条件,因为它必须检查更新。我想知道是否有一种方法可以检查是否发生了更新。

谢谢。

最佳答案

我建议使用 svn hooks 而不是临时脚本,但您需要将它们放在服务器端。

这就是说,如果您仍然需要构建自己的脚本,您需要注意如果没有发生错误,svn update 命令将评估为 true。这与是否真正更新文件的命令无关。因此,您需要检查当前的 svn 版本和远程存储库的 svn 版本。如果它们不同,那么您可以执行 svn update 和任何其他所需的命令。

#!/bin/bash

REMOTE_REPO="svn://path/to/remote/repo"
LOCAL_REPO="/path/to/local/repo"

REMOTE_REV=$(svn info $REMOTE_REPO | grep '^Revision:' | awk {' print $2 '})
LOCAL_REV=$(svn info $LOCAL_REPO | grep '^Revision:' | awk {' print $2 '})

if [ $REMOTE_REV -ne $LOCAL_REV ]; then
cd $LOCAL_REPO
svn up

# Add any other command here
fi

关于linux - if 将 tortoiseSVN 更新检查到 linux bash 的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44972977/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com