2013-05-28 29 views
2

我有一個存儲庫,我用git version 1.7.12創建。如何將預推git鉤子添加到現有存儲庫?

但是,我已更新至version 1.8.2.3。這有鉤預先推。使用此版本的新創建的存儲庫使用預推鉤。然而,當我預推添加到現有的回購協議,我得到以下error

fatal: cannot exec '.git/hooks/pre-push': Not a directory 

任何幫助嗎?

謝謝!

+0

我剛做了一個新的版本庫,'pre-push.sample'文件沒有執行權限。也許這是什麼讓你? –

+0

謝謝!我將如何解決這個問題? @CarlNorum – VarunMurali

+0

我只是做了一些更多的測試,這很可能是你得到的。現在寫一個答案。 –

回答

3

我剛剛做了一個全新的存儲庫,並且pre-push.sample就在那裏,就像你說的那樣。由於某種原因,它沒有設置執行權限,因此在重命名爲pre-push時不起作用。如果您添加執行權限:

chmod +x .git/hooks/pre-push 

您應該沒問題。提供的示例也有一個bash,如果/然後bug。

# Handle delete 

到:從變化的線路32

: # Handle delete 

固定對我來說。

+0

是的,它適用於全新的知識庫。但我的問題是,你如何添加一個pre-push hook到由舊的git版本構成的現有倉庫。當我創建文件並運行'chmod'命令時,它不起作用。它給了我上面的錯誤。 – VarunMurali

+0

嗯,我在這裏試過,它似乎工作正常。不過,我有1.8.3。也許這是來自你的腳本的消息,而不是從git?你能顯示腳本的內容嗎? –

0

運行「git init」來重新初始化你的本地git倉庫。

相關問題