我正在尝试制作一个脚本,如果有更改,该脚本将每小时从 git 存储库中自动拉取。它运行在树莓派上。
#!/bin/bash
VAR=$(git merge-base origin master)
VAR2=$(git rev-parse origin)
if [ "$VAR" == $VAR2 ];
then
echo "hi"
git pull
else
echo "no"
fi
这是我的代码。它返回这些错误
致命:不是有效的对象名称来源致命:模棱两可的参数"起源":未知修订或路径不在工作树中。使用"--"将路径与修订分开,如下所示:
git <command> [<revision>...] -- [<file>...]
但是,上面的 2 个命令(错误来自(在我的 Windows 机器上运行良好。这里有什么问题?
溶液我发现在我的 git 分支中 -a 我没有头分支,所以我创建了一个 git symbolic-ref
我不完全确定你的设置...但可能起源是一个遥远的,而不是一个分支......如果是这种情况,合并基础和 rev-parse 都将因此而失败。合并基础至少需要 2 个分支或修订才能工作......rev-parse 需要一个分支。如果您尝试使用遥控器作为参数之一,则预计会发生一次爆炸。