Warum können Pull-Anfragen in Mercurial nicht ernsthaft implementiert werden?


10

Vor einer Woche war ich bei LFNW und als ich nach seinem Vortrag mit Larry Hastings sprach, sagte er (umschrieben):

In Git gibt es etwas, das den Pull Request-Workflow ermöglicht, das in Mercurial nicht vorhanden ist. Deshalb sind Pull-Anfragen auf BitBucket nicht großartig.

(Für den Kontext haben wir die Tatsache diskutiert, dass Python aufgrund des PR-Workflows von Mercurial zu Git wechselt, im Gegensatz zum Workflow "Datei-Fehler-dann-Anhängen-Patch".)

Worüber spricht er hier? Keiner von uns konnte den Namen dessen finden, was es war. Ich habe das Web ohne Glück durchsucht.


/ Ich hoffe wirklich, dass dies nicht vom Thema
abweicht

Antworten:


12

Sie sollten den PEP wahrscheinlich selbst durchlesen. Entweder ist Larry Hastings verwirrt oder etwas ist in der Kommunikation verloren gegangen. Die Gründe für den Wechsel zu Git und Github über Quecksilber sind nicht technisch, sondern sozial. Ein Pull-Request-Workflow wird mit mercurial perfekt unterstützt, aber Github ist derjenige mit der viel breiteren Benutzerbasis über Bitbucket und etwas besseren Codeüberprüfungsfunktionen.


Die "verteilte" Natur von Git hat nichts damit zu tun?
Robert Harvey

12
Mercurial ist genauso verteilt. Mercurial und Git unterscheiden sich in Implementierungsdetails und Nebenfunktionen, sind jedoch in den Hauptpunkten im Wesentlichen identisch.
Karl Bielefeldt

10
@ RobertHarvey Pull-Anforderungen haben keine echte "Implementierung" im eigentlichen Versionsverwaltungssystem. Sie sind lediglich eine Notiz "Ich möchte diese zusammenführen" außerhalb des Systems.
Mario

Dann müssen wir es falsch machen - unsere HG-Pull-Anfragen sind mit ALLEN Abweichungen von 'Quelle' zwischen 'Aktuelle Quelle' und 'PR' verschmutzt. Bei Git-Repos sehen wir nur Änderungen in 'PR', die Überprüfungen menschlich ermöglichen. Unser (wollen) Verständnis dieses Unterschieds ist, dass es mit der unveränderlichen Natur der HG-Niederlassungen zusammenhängt
Julian
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.