如何解决访问预提交挂钩中的暂存文件列表
我有一个预提交挂钩,可以在提交时提高软件版本。但是,当仅更新 CHANGELOG.md
时,我想跳过此功能。我试过了:
diffs="$(git diff --name-only)"
if [[ $diffs == "CHANGELOG.md" ]]
then
# echo 'no bump'
else
# echo 'bump'
# code that bumps the version
fi
但经过一些检查,即使 diffs
已上演,CHANGELOG.md
变量实际上也是空白的。所以它总是评估 else
语句。我想知道是否可以在钩子中以某种方式访问差异。
解决方法
@JBallin 的评论解决了我的问题。应使用 --cached
或 --staged
,因此代码必须更改为:
diffs="$(git diff --name-only --cached)"
if [[ $diffs == "CHANGELOG.md" ]]
then
# echo 'no bump'
else
# echo 'bump'
# code that bumps the version
fi
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。