Git

git push 遠端失敗:錯誤:鉤子拒絕更新 refs/heads/master

  • July 4, 2019

我最近試圖在社區 git repo 上開始我自己的項目,但我遇到了一些複雜情況。我是 git 的新手,但這就是我一直在嘗試做的只是測試它。

我執行以下命令,它們都執行正常。

git config --global user.name "MYNAME"
git config --global user.email "MYEMAIL"
mkdir testproject
cd testproject
git init
touch README
git add README
git commit -m 'first commit'
git remote add origin git@git.xxxxx.org:community/testproject.git

並且所有上述命令都可以正常執行。但是,當我執行下一個命令時,我得到了一個巨大的錯誤。

git push -u origin master

錯誤是。

Counting objects: 3, done.
Writing objects: 100% (3/3), 204 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
Username for 'http://git.xxxxxx.org': MYEMAIL
Password for 'http://MYEMAIL.com@git.xxxxxx.org': 
remote: /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/spec_set.rb:92:in `block in materialize': Could not find rake-10.1.0 in any of the sources (Bundler::GemNotFound)
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/spec_set.rb:85:in `map!'
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/spec_set.rb:85:in `materialize'
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/definition.rb:114:in `specs'
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/definition.rb:159:in `specs_for'
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/definition.rb:148:in `requested_specs'
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/environment.rb:18:in `requested_specs'
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:13:in `setup'
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler.rb:120:in `setup'
remote:         from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/setup.rb:17:in `<top (required)>'
remote:         from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
remote:         from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
remote: error: hook declined to update refs/heads/master
To http://git.xxxxxx.org/community/testproject.git
! [remote rejected] master -> master (hook declined)
error: failed to push some refs to 'http://git.xxxxxx.org/community/testprojact.git'

我不太確定從這裡做什麼,但非常感謝任何幫助。

另外,如果重要的話,我正在執行 Arch。

編輯: 我嘗試重新安裝 rake,但沒有成功。我目前的 rake 版本是 10.1.1,所以我嘗試刪除它並用 10.1.0 版本替換它,但也沒有修復它。

但是,當我安裝 rake 時,出現錯誤:

WARNING:  You don't have /home/josh/.gem/ruby/2.0.0/bin in your PATH,
         gem executables will not run.

這會導致問題嗎?

遠端拒絕接收數據只是真正問題的副作用——git認為它被拒絕是因為遠端端的一個鉤子失敗,退出狀態>0(你可以看到它在紅寶石回溯)。似乎其中一個鉤子試圖使用rake,但找不到它。這可能不是您的特定回購的問題。該消息也不是來自您的本地電腦 - 請注意它以“remote”為前綴,它是缺少的遠端rake,因此可能只有該端的系統管理員可以解決問題。

我建議您聯繫管理您的社區 git 儲存庫的任何人。

引用自:https://unix.stackexchange.com/questions/106113