我想优化一个远程更新脚本,以便在bzr pull
没有拉取任何更改时它不会尝试重建目标。
有没有比解析bzr pull
输出更简单的方法呢?
您可以使用
bzr missing
命令:
if ! bzr missing >/dev/null; then
echo some revisions are missing
else
echo we are in sync
fi
您可以轻松创建虚拟分支来测试这一点:
mkdir dummy
cd dummy
bzr init trunk
cd trunk
date > date.txt
bzr add
bzr commit -m first
date >> date.txt
bzr commit -m second
bzr branch . -r1 ../behind
bzr branch . ../copy
cd ../copy
! bzr missing >/dev/null && echo behind || echo up to date
cd ../behind
! bzr missing >/dev/null && echo behind || echo up to date
您还可以
在拉取之前查看bzr status -r branch:PATH_TO_REMOTE_BRANCH
的输出以查看是否有更改。