我有一个带有预提交钩子的git repo,它故意在100%的时间内失败。
cat .git/hooks/pre-commit
> exit 1
如果我尝试通过命令行提交,则会按预期失败。但是,如果我从egit提交,则忽略钩子并且提交更改。
egit / jgit不能识别挂钩吗?有解决方法吗?
提前致谢!
答案 0 :(得分:9)
(原始答案:2011年6月)
MatrixFrog正确地指出bug 299315,其中提到这些挂钩尚不支持。
您还可以浏览JGit存储库,now on GitHub,,它不会显示有关钩子的任何提交。
你可以在EGit User Guide中搜索'hook':也没有提到钩子的概念。
2015年3月更新(4年后):MariuszS指出in the comments,"hook" is present in JGit。
2015年,正在进行支持这些挂钩的工作:
那些应该在即将到来的JGit 3.7
中2015年第4季度更新,EGit 4.x支持挂钩,如this answer中所述。
答案 1 :(得分:0)
我的解决方法:
运行:git commit -a ...
如果可以,从工作目录的命令行执行挂钩,所有其他eGit功能将正常工作。