用于检查过去2天git提交的Bash脚本

9bfwbjaz  于 2022-12-10  发布在  Git
关注(0)|答案(1)|浏览(129)

我正在尝试写一个bash脚本,它检查是否有任何仓库的提交,并返回一个消息。

MY_PATH="C:/test"
cd "$MY_PATH"
git clone https://github.com/test-repo/docker-react.git
cd "docker-react"
git checkout master
if [[ -n "`git log --pretty=format: --name-only --since="200 days ago" | sort | uniq`" ]]
 then
 echo -e No Commits last 2 days
 else
 echo -e Commits available
fi

当我执行这段代码时,它总是显示可用的提交,即使我改变了日期。
我哪里做错了?

eh57zj3b

eh57zj3b1#

这看起来像一个bash脚本,它将被Git for Windows bash shell解释。
这意味着应该使用ShellCheck进行检查,然后建议:

#!/bin/bash
MY_PATH="C:/test"
cd "$MY_PATH" || exit
git clone https://github.com/test-repo/docker-react.git
cd "docker-react" || exit
git checkout master
if [[ -n "$(git log --pretty=format: --name-only --since="200 days ago" | sort | uniq)" ]]
 then
 echo -e No Commits last 2 days
 else
 echo -e Commits available
fi

尚不理想的:理想情况下,它会检查仓库是否已经被克隆了。2但是它应该能更好的工作。

相关问题