Git CI - 如何检查特定文件在新版本上是否发生了更改?



我正在尝试设置一个简单的Git CI。

但是,我希望能够检查特定文件(假设requirements.txt(是否在最新版本/提交和当前版本/提交之间发生了任何更改,而不是每次都重建。

有没有 git 命令?

git diff 命令有一个签名来限制路径,所以你可以这样做:

git diff HEAD HEAD~1 --no-patch --exit-code requirements.txt

如果文件在最新提交中发生更改,则返回代码将为 1,如果未更改,则返回代码为 0。然后,您可以像这样访问返回代码(在 bash 中(:

echo $?

讨论

  • 两个参数 HEAD 和 HEAD~1 是当前分支(您的最新提交(的提示和它后面的提交。
  • --
  • no-patch 选项禁止显示实际的差异输出。
  • --
  • exit-code 参数导致返回代码在存在差异时为 1,否则为 0。

相关内容

最新更新