Fehler in Git: Du kannst nur deine eigenen Commits in dieses Repository pushen
Lesezeit: 4 Minuten
Oleg
Gestern fing ich an, Fehler zu erhalten, als ich versuchte, mein Commit in das Repo zu verschieben. Wie kann ich das beheben? Und ich bin kein Administrator dieses Repos.
remote: You can only push your own commits in this repository
remote: Commit commitName was committed by <myName> <[email protected]>
To ssh://bitbucket.awg.ru/repo
! [remote rejected] branchName -> branchName (pre-receive hook declined)
error: failed to push some refs to 'ssh://[email protected]/repo'
Aktualisieren
Danke an alle, das Problem ist gelöst. Das Problem lag auf der Bitbucket-Seite, der Administrator hat einige Optionen geändert. Jetzt ist alles gut.
Sind einige der Commits, die Sie pushen möchten, von jemand anderem als Ihnen verfasst worden?
– Lasse V. Karlsen
19. Oktober 2018 um 7:58 Uhr
Nein, alle Zusagen wurden von mir gemacht.
– Oleg
20. Oktober 2018 um 8:32 Uhr
Wissen Sie, welche Einstellungen sie speziell geändert haben?
– Rotail
7. April um 21:08 Uhr
Oleg
Danke an alle, Problem ist gelöst. Das Problem lag auf Bitbucket-Seite, der Administrator hat einige Optionen geändert. Jetzt ist alles gut.
AKTUALISIEREN
Laut @Oleg, der die Frage gestellt hat. Das Problem tritt im Allgemeinen aufgrund eines Bitbucket-Hooks auf. Dieser Hook lehnt jeden Push ab, der einen Commit enthält, der nicht von dem Benutzer festgeschrieben wurde, der auf den Server pusht.
Um das Problem zu lösen:
Sie müssen Administratorzugriff auf das Repository auf dem Bitbucket-Server haben
Gehen Sie zum Repository auf dem Server
Dann ⚙ Repository-Einstellungen in der Seitenleiste
Auswählen Haken
Deaktivieren Bestätigen Sie Committer Haken
Du bist fertig
Dies ist jedoch nur eine Lösung, wenn Sie dies wirklich deaktivieren möchten. Die Überprüfung des Committers ist eine gute Sicherheitsfunktion von Bitbucket. Stellen Sie in diesem Fall Ihre globalen Einstellungen korrekt ein. Dies ist der bessere Weg, es zu tun.
– Christian Müller
27. Juni 2020 um 8:51 Uhr
Sie müssen Ihre Identität festlegen, bevor Sie sie auf Bitbucket übertragen
Identität ist eingestellt, und bis gestern war alles ok.
– Oleg
19. Oktober 2018 um 7:31 Uhr
Gehen Sie zu Ihrem Repo-Browser und überprüfen Sie Ihren Benutzernamen und Ihre E-Mail-Adresse in Ihrem Profil (obere rechte Ecke).
Aktualisieren Sie in Git Bash Ihre Details gemäß Ihrem Git-Webprofil git config –global user.email “[email protected]” git config –global user.name “USERNAME”
Sie müssen die Festschreibung rückgängig machen und dann wiederholen, nachdem Sie Ihre Benutzerdetails in Schritt 2 geändert haben
Pushe die Änderungen git push
eeijlar
Angenommen, Sie haben die Git-Konfiguration bereits gemäß der @Manish R-Antwort durchgeführt, überprüfen Sie dann, ob Bitbucket den Verify Committer-Hook nicht erzwungen hat. Siehe Projekt -> Einstellungen -> Hooks
Ich hatte das gleiche Problem, als ich mit verschiedenen Projekten in meiner Büromaschine arbeitete. Git ist global mit meiner Büro-E-Mail „[email protected]“ konfiguriert. Das andere ist ein Open-Source-Projekt des GitLab-Repositorys, das von meinem Gmail-Konto authentifiziert wird.
Push für das GitLab-Repository funktionierte nicht und zeigte den gleichen Fehler wie oben. Der Grund war, dass der Autor der Commit-Nachricht aus meiner Büro-E-Mail stammte.
Für mich hat es funktioniert, einen anderen Committer-Namen und eine andere E-Mail-Adresse pro Repository beizubehalten. Ich habe die modifiziert Benutzer Email für das GitLab-Repository. Dies lässt einfach das Flag –global weg.
Jetzt werden alle Ihre Commits von dem neuen Autor stammen, den Sie für das Repository festgelegt haben, wodurch der obige Fehler verhindert wird.
Roger Pérez
Sie müssen den Commit mit der falschen E-Mail-Adresse rückgängig machen und dann die Git-Konfiguration wie unten beschrieben aktualisieren. Wenn Sie sich mehrmals verpflichtet haben, müssen Sie möglicherweise Rosinen auswählen und dann festschreiben, aber erst, nachdem Sie diese Schritte ausgeführt haben:
# remove "--global" if you only want to update it for the local repo
git config --global user.email "Your Email"
git config --global user.name "Your Name"
Machen Sie das neue Commit und dann sollten Sie pushen können.
Mahesh Nanayakkara
Wenn das Problem auch nach dem Einstellen weiterhin besteht Benutzer Email und Nutzername? Möglicherweise müssen Sie Ihr Commit-Autorenprotokoll ändern, damit es mit diesem Benutzer übereinstimmt. Überprüfen Sie einfach das Git-Protokoll, bevor Sie es unter cmd ausführen.
git commit --amend --reset-author --no-edit
11796300cookie-checkFehler in Git: Du kannst nur deine eigenen Commits in dieses Repository pushenyes
Sind einige der Commits, die Sie pushen möchten, von jemand anderem als Ihnen verfasst worden?
– Lasse V. Karlsen
19. Oktober 2018 um 7:58 Uhr
Nein, alle Zusagen wurden von mir gemacht.
– Oleg
20. Oktober 2018 um 8:32 Uhr
Wissen Sie, welche Einstellungen sie speziell geändert haben?
– Rotail
7. April um 21:08 Uhr