2017-03-08 3 views
0

Wenn ich Projekt A in einem neuen Projekt, B, klonen/forkeln/abarbeiten möchte, was wäre der beste Ansatz?Die beste Methode, um ein Basisrepository für ein neues Projekt zu bearbeiten

Meine aktuelle Idee ist, dies zu tun:

  • Klon-Repository A, und zwei Fernbedienungen erstellen. Der erste, das ein aussagekräftiger Name in die Repository-URL der Repository A zeigt, und die zweiten, origin, die B. zu der Verwahrungsstelle weist

Der Grund, warum ich dies tun wollen ist, so dass Repository B-Repository A haben kann eine Basis, und jederzeit Änderungen an Repository A vorgenommen werden, die ich zusammenführen möchte, kann ich nur git pull <repository-A-remote-name> <branch> und wenn ich zu Repository-BI schieben möchten, nur zum Ursprung drücken.

Hat jemand schon einmal diese Art von Workflow gehabt, und wenn ja, würden Sie sagen, dass dies ein guter Ansatz ist, oder haben Sie etwas anderes versucht?

Hinweis: Pull-Anforderungen auf GitHub sind hier nicht notwendig, da Projekt A nie die Änderungen des Projekts B braucht, aber Projekt B müssen immer in Aktuelles fusionieren A. Projekt

+1

Forking ist im Prinzip das Gleiche wie Klonen. 'Forking 'ist nur ein etwas ausgefallenerer Name, den github erfunden hat. Also 1. und 2. sind identisch. Siehe [hier] (http://stackoverflow.com/questions/6286571/are-git-forks-actually-git-clones) – ckruczek

+1

Klonen Sie, wenn Sie den GitHub, Gabel und klonen Sie dann die Gabel, wenn Sie nicht tun. – OldBunny2800

+0

Ah gute Punkte. Repository A und B sind im Besitz von mir. Frage aktualisiert :) – Lansana

Antwort

1

Das ist so ziemlich das gleich. Der einzige Unterschied ist die Gabel-Beziehung in GitHub. Forking in GitHub erstellt nur einen Klon des Repos unter Ihrem Benutzer und unterhält eine Eltern-Gabel-Beziehung zwischen den beiden. Wenn Sie möchten, dass Ihre Gabel als Gabel des Elternteils in der Gabel und im Elternelement angezeigt wird und/oder Pull-Anforderungen posten möchte, wird eine Gabelung ausgeführt. Wenn Sie nicht möchten, dass diese Beziehung angezeigt wird und Sie keine PRs posten möchten, dann klonen Sie einfach und drücken Sie als neues Repo auf Ihr Konto.

Eine entfernte upstream für A und eine remote origin für Ihre eigenen Repo und regelmäßig zu integrieren Upstream-Änderungen in Ihrem Repo ist ziemlich häufig Workflow, unabhängig von GitHub überhaupt. (Namen sind natürlich frei wählbar)

+0

Aktualisierte meinen Kommentar in Bezug auf Ihren ersten Absatz. Und vielen Dank für die Sekunde, ich wollte nur sicherstellen, dass ich das auf eine gute, praktische Art und Weise durchführe, die von anderen gemacht und als eine gute Praxis angesehen wird. – Lansana

Verwandte Themen