Ich habe kürzlich versucht, mein eigenes Projekt auf einem Community-Git-Repo zu starten, und ich hatte einige Komplikationen. Ich bin neu in Git, aber hier ist, was ich versucht habe, um es nur zu testen.
Ich führe die folgenden Befehle aus und alle laufen in Ordnung.
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 [email protected]:community/testproject.git
Alle oben genannten Befehle werden ohne Fehler ausgeführt. Wenn ich jedoch den nächsten Befehl ausführe, wird ein großer Fehler angezeigt.
git push -u origin master
und der Fehler ist.
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://[email protected]':
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'
Ich bin mir nicht sicher, was ich von hier aus tun soll, aber jede Hilfe wird sehr geschätzt.
Außerdem leite ich Arch, wenn es darauf ankommt.
Bearbeiten: Ich habe versucht, Rake neu zu installieren und es hat nicht funktioniert. Meine aktuelle Version von Rake war 10.1.1, also habe ich versucht, es zu entfernen und durch Version 10.1.0 zu ersetzen, und das hat es auch nicht behoben.
Bei der Installation von Rake wurde jedoch eine Fehlermeldung angezeigt:
WARNING: You don't have /home/josh/.gem/ruby/2.0.0/bin in your PATH,
gem executables will not run.
Könnte dies zum Problem beitragen?
Ich glaube, das ist dein Problem.
Suche nach diesem Fehler Ich bin auf SO auf diese Fragen und Antworten mit dem Titel gestoßen : error: hook lehnte es ab, refs / Heads / external_pub zu aktualisieren, während ein Zweig verschoben wurde .
Es scheint, dass es auf dem Server einen Git-Hook gibt , der den Push ablehnt.
Auszug
Um festzustellen, warum diese Fehlermeldung angezeigt wird, müssen Sie herausfinden, welcher Haken Sie auslöst. Hooks werden im
hooks
Ordner im Git-Ordner (auf der Remote-Server-Seite) gespeichert. Suchen Sie denpre-receive
Hook oderupdate
Hook und überprüfen Sie, was Ihr Problem verursacht.quelle
Überprüfen Sie die Rolle / Gruppe und die Berechtigung im GIT-Repository. Mein Fall, nur die rote Berechtigung und die Auflösung nach Lese- / Schreibzugriff durch das GIT-Repository-Team
quelle
Hat @Radhakrishnan bereits vorgeschlagen, stehen Sie möglicherweise vor einem Berechtigungsproblem.
Wenn Sie Redmine Git Hosting verwenden , überprüfen Sie, ob Ihre Projet-Berechtigungs- Manager- Rolle dem Benutzer zugewiesen wurde, der versucht, die Tracking-Referenzen seines Git neu zu schreiben.
Bitte beachten Sie, dass ich davon ausgehe, dass Sie sich der Auswirkungen von Git Push-Force auf die anderen Benutzer bewusst sind , die möglicherweise denselben Remote-Zweig gemeinsam nutzen. Weitere Informationen finden Sie in diesem Artikel
quelle