如何删除远程git挂钩?

33qvvth1  于 2022-11-20  发布在  Git
关注(0)|答案(5)|浏览(388)

我已经用Husky实现了预推挂钩。现在我想删除它。
问题是在yarn remove husky之后git钩子仍然存在于.git/hooks中。
因此,每次我想提交或切换分支或提交时都会得到此错误,因此提交甚至是不可能的--〉
.git/hooks/pre-commit: line 6: node_modules/run-node/run-node: No such file or directory
我知道我总是可以删除.git/hooks里面的每一个钩子,但是我怎么能远程推动这些改变呢?怎么不强迫我的队友做同样的事情呢?
我也知道我可以使用-n标志提交,但我仍然不想这样做。

vyu0f0g1

vyu0f0g11#

假设您没有非husky钩子,您可能希望保留:

rm -f .git/hooks/*

.“git/hooks/”中的每个文件要么是git-hook,要么被git忽略。通过删除里面的所有文件,你将摆脱所有的hook,并恢复默认行为。
默认情况下,这里有example-hook,但是除了作为例子之外,它们没有任何作用,所以你可以删除它们。

r7xajy2e

r7xajy2e2#

我认为最好将所有 *.sample保存在.git/hooks中
要删除git hooks谁来哈士奇:

  • 首先,转到hooks目录
cd .git/hooks
  • 其次,保留所有 *.sample文件并删除其他文件
ls | grep \.sample -v | xargs rm
5sxhfpxr

5sxhfpxr3#

git config --unset core.hooksPath
vs91vp4v

vs91vp4v4#

所以基本上移除远程git钩子是不可能的。
最好的办法是删除本地的,并通知团队的其他成员也这样做。
关于如何在本地删除git挂钩,请检查@wotanii answer

7z5jn7bk

7z5jn7bk5#

Husky文档建议这样做:

$npm uninstall husky && git config --unset core.hooksPath

or 

$ yarn remove husky && git config --unset core.hooksPath

相关问题