Ein seltsamer Titel, ja, aber ich denke, ich habe ein bisschen Boden zu decken.
Wir haben ein Organisationskonto auf Github mit privaten Repositories. Wir möchten die nativen Issues / Pull-Requests-Funktionen von Github nutzen (Pull-Requests sind genau das , was wir für Code-Reviews und Feature-Diskussionen wollen). Wir haben den Tool Hub von defunkt gefunden, der ein kleines Feature hat, ein vorhandenes Problem in eine Pull-Anfrage umzuwandeln und Ihre aktuelle Filiale automatisch damit zu verknüpfen.
Ich frage mich, ob es die beste Vorgehensweise ist, wenn jeder Entwickler in der Organisation das Repository der Organisation aufteilt, um seine Aufgaben zu erledigen / Fehlerbehebungen / etc. Dies scheint ein ziemlich solider Arbeitsablauf zu sein (wie es im Grunde bei jedem Open Source-Projekt auf github der Fall ist), aber wir möchten sicherstellen, dass wir Probleme verfolgen und Anfragen aus EINER Quelle, dem Repository des Unternehmens, abrufen können.
Ich habe also ein paar Fragen:
- Ist in diesem Fall ein Fork-per-Developer-Ansatz angemessen? Es scheint, als könnte es ein wenig übertrieben sein. Ich bin mir nicht sicher, ob wir für jeden Entwickler einen Fork benötigen, es sei denn, wir stellen Entwickler vor, die keinen direkten Push-Zugriff haben und deren Code überprüft werden muss. In diesem Fall möchten wir eine solche Richtlinie nur für diese Entwickler einrichten. Also, was ist besser? Alle Entwickler in einem einzigen Repository oder eine Abzweigung für alle?
- Hat jemand Erfahrung mit dem Hub-Tool, insbesondere der Pull-Request-Funktion? Wenn wir einen Fork pro Entwickler (oder sogar für weniger privilegierte Entwickler) durchführen, wird die Pull-Request-Funktion von Hub auf die Pull-Requests aus dem Upstream-Master-Repository (dem Repository der Organisation?) Angewendet oder hat sie ein anderes Verhalten?
BEARBEITEN
Ich habe einige Tests mit Problemen, Gabeln und Pull-Anfragen durchgeführt und festgestellt, dass dies der Fall ist. Wenn Sie ein Problem im Repository Ihrer Organisation erstellen, geben Sie das Repository aus Ihrer Organisation an Ihr eigenes Github-Konto weiter, nehmen Sie einige Änderungen vor und führen Sie es in der Hauptniederlassung Ihrer Gabel zusammen. Wenn Sie versuchen, auszuführen hub -i <issue #>
, wird eine Fehlermeldung angezeigt User is not authorized to modify the issue
. Offensichtlich wird dieser Arbeitsablauf nicht funktionieren.