【发布时间】:2022-01-07 13:17:52
【问题描述】:
我正在使用"husky": "^7.0.4"。
我的团队在打开 PR 之前压缩了他们的提交。
我有一个pre-commit 文件来自动化这个工作流程。每隔一次我运行提交功能,预提交流程就会完美运行。所以第 1、3、5 等有效。第 2、4、6 次等时间打印此错误
fatal: cannot lock ref 'HEAD': is at 766hdjoXXX but expected 766e11XXX
我认为这可能是因为我没有更改文件,但是当我尝试更改某些内容时,它也不起作用(无论如何它都会成功并每隔一次失败)。知道有什么问题吗?
这是pre-commit 文件:
read -n1 -p "Do you want to squash commits? [n/Y]" SHOULD_SQUASH < /dev/tty
case $SHOULD_SQUASH in
n|N)
echo
echo Skipping squash, now linting files...
;;
y|Y)
[ -z "$SQUASH_BRANCH" ] && SQUASH_BRANCH=develop
branch=$(git symbolic-ref HEAD)
echo
echo Squashing all commits from $branch
git reset $(git merge-base $SQUASH_BRANCH $branch)
echo ------SUCCESS!------
echo Commits successfully squashed.
git add .
echo Added all files successfully.
;;
*)
echo
echo Skipping squash, now linting files...
;;
esac
npx pretty-quick --staged
npm run lint
squash 函数来自一个自定义函数,它可以正常工作,我们创建的位于.zshrc。
【问题讨论】: