如何将预推git钩子添加到现有存储库?

如何将预推git钩子添加到现有存储库?,git,github,repository,githooks,Git,Github,Repository,Githooks,我有一个使用git 1.7.12版创建的存储库 但是,我已更新到版本1.8.2.3。这有预推的挂钩。使用此版本新创建的存储库使用预推挂钩。但是,当我将预推式回购添加到现有回购时,会出现以下错误: fatal: cannot exec '.git/hooks/pre-push': Not a directory 有什么帮助吗 谢谢 我刚刚创建了一个全新的存储库,正如您所说,pre-push.sample就在那里。但由于某些原因,它没有设置执行权限,因此重命名为pre-push时它不起作用。如果添

我有一个使用git 1.7.12版创建的存储库

但是,我已更新到
版本1.8.2.3
。这有预推的挂钩。使用此版本新创建的存储库使用预推挂钩。但是,当我将预推式回购添加到现有回购时,会出现以下
错误

fatal: cannot exec '.git/hooks/pre-push': Not a directory
有什么帮助吗


谢谢

我刚刚创建了一个全新的存储库,正如您所说,
pre-push.sample
就在那里。但由于某些原因,它没有设置执行权限,因此重命名为
pre-push
时它不起作用。如果添加执行权限:

chmod +x .git/hooks/pre-push
你应该没事的。提供的示例也有一个bash if/then错误。将第32行更改为:

# Handle delete
致:


为我修复了它。

运行“git init”重新初始化本地git存储库。

我刚创建了一个新存储库,并且
预推送.sample
文件没有执行权限。也许这就是你想要的?谢谢!我该如何解决这个问题@CarlNorumI只是做了更多的测试,很可能这就是你的原因。现在写一个答案。我运行了行
chmod+x pre-push
,但它仍然不起作用。是的,它在全新的存储库上起作用。但我的问题是,如何将预推钩子添加到由较旧git版本生成的现有存储库中。当我创建文件并运行
chmod
命令时,它不起作用。它给了我上面的错误。嗯,我在这里试过了,它似乎工作得很好。不过我有1.8.3。也许这是来自脚本的消息,而不是来自git的消息?你能展示剧本的内容吗?
: # Handle delete