Ich habe eine Pull-Anfrage für ein Projekt geöffnet. Der Betreuer hat beschlossen, dies zu akzeptieren, forderte mich jedoch auf, einige Inhalte zu ändern.
Wie kann ich es tun? Wie kann ich den Commit-Hash unverändert lassen?
git
github
pull-request
Flygoast
quelle
quelle
Antworten:
Schieben Sie einfach mehr Commits in den Zweig, für den die Anfrage bestimmt ist. Die Pull-Anfrage nimmt dies dann auf
Beispiel:
Wenn Sie b in master zusammenführen möchten
quelle
Ich hatte nur ein Commit in einer Pull-Anfrage und habe es immer
git commit --amend
aktualisiert. Ich habe dann einen Force Push mit gemacht,git push -f
so dass mein geändertes Commit das ursprüngliche ersetzt hat. Die Pull-Anforderung hat das neue Commit automatisch übernommen. (Es wurden tatsächlich beide Commits angezeigt, aber als ich die Seite neu lud, war das alte Commit verschwunden.)Ein erzwungener Push wird im Allgemeinen nicht empfohlen, kann jedoch für Pull-Anforderungen hilfreich sein. Es wird nicht empfohlen, da jemand, der ein Commit auf Ihr basiert, nach Ihrer Änderung eine Rebase durchführen muss. Da sich niemand bei seiner Arbeit auf eine Pull-Anfrage stützen sollte, sollte dies in dieser Situation ziemlich sicher sein.
quelle
Wenn Sie weiterhin Änderungen vornehmen und weiterhin auf denselben Zweig pushen, werden die verfeinerten Commits derselben Pull-Anforderung hinzugefügt (es sei denn, Ihre Pull-Anforderung wurde zusammengeführt). Dies könnte die Geschichte sehr unübersichtlich machen.
Eine alternative Lösung und eine Technik, die ich verwende, ist wie folgt:
Erstellen Sie einen neuen Zweig (Fixes) aus dem Repository (Upstream) und dem Zweig (Entwickeln), an den Sie die Pull-Anforderung senden möchten, indem Sie Folgendes tun:
Git Branch Fixes Upstream / Entwicklung
Fügen Sie Ihre verfeinerten Commits direkt zu diesem neu erstellten Zweig hinzu.
git commit -m "Ihre Nachricht"
Schieben Sie diesen Zweig auf Ihre eigene Gabelfernbedienung (könnte als Ursprung bezeichnet werden).
quelle
Sie können auch Github API verwenden .
Beispiel mit Locken
Die detaillierte Datenliste finden Sie in Github-Entwicklers
Beispiel: Ändern Sie den Namen meiner Pull-Anfrage
quelle
head/label
und kannhead/ref
nicht bearbeitet werden.