Ich habe ein Spielprojekt, das zwei Versionen haben wird:
- Eine einfache Version des Spiels, der Kern.
- Eine erweiterte Version des Spiels.
Ich habe die 1. Version in meinem öffentlichen Repository und nur ich werde daran arbeiten. Was die 2. Version betrifft, werden zwei Freunde von mir und ich daran arbeiten. Der entscheidende Teil ist, dass die beiden Versionen in meinem Repository bleiben sollen.
Ich dachte, ich könnte Zweige dafür verwenden, aber angesichts dieser Frage und ihrer Antwort ist es keine gute Praxis, dies in Bezug auf die Versionierung zu tun. Soweit ich herausgefunden habe, ist es nicht möglich, ein eigenes Repository zu forken.
Welche Möglichkeiten habe ich hier? Wie kann ich beide Versionen in meinem Repository behalten?
fork
ein Repository ing wird ein neues Repository in Ihrem Konto erstellen.Antworten:
Mir scheint, dass Sie zwei Repositorys benötigen, nicht zwei Zweige . Eine Verzweigung ist ein Mechanismus, um die Änderungen in einem einzelnen Repository zu verarbeiten, um sie schließlich mit dem Rest des Codes zusammenzuführen.
Wenn Sie beide Versionen einer ähnlichen Codebasis wirklich im selben Repository behalten möchten , können Sie nur eine Verzweigung auswählen. Wie bereits erwähnt, besteht der Hauptzweck einer Verzweigung jedoch darin, einige bestimmte Festschreibungen auf eine bestimmte Weise zu trennen dass sie während der Entwicklungsphase nicht mit dem Rest des Codes in Konflikt stehen und sie zusammenführen, wenn sie bereit sind, loszulegen.
Es gibt Situationen, in denen ein Repository zwei leicht unterschiedliche Zweige hat - z. B. 32-Bit- und 64-Bit-Versionen desselben Quellcodes. Ich empfehle Ihnen jedoch, getrennte Repositorys zu verwenden, wenn dies eine Option ist.
quelle
Die Antwort auf die Frage "Soll ich klonen oder verzweigen?" Entspricht genau der Antwort auf die Frage "Möchte ich eine eigene Version dieses Projekts?" yes = fork, no = klone das Repository.
In Git ist Branch eine leichte Sache, die oft nur vorübergehend ist und gelöscht werden kann. Eine Gabel (auf Github) ist ein neues Projekt, das auf einem vorherigen Projekt basiert. Sie klonen ein Repository, um es als Teammitglied zu bearbeiten.
Bei vielen öffentlichen Projekten haben Sie das Projekt gegabelt, um die funktionierenden Änderungen aus dem Hauptprojekt herauszuhalten.
Verzweigen Sie in Phase 2 das Projekt, klonen Sie es dann auf Ihren Arbeitscomputer und lassen Sie Ihre Freunde dasselbe tun.
quelle
Wie es sich wirklich anhört, möchten Sie ein Submodul. Wenn Sie das erste Repo (Ihr privates einfaches Repo) erstellen und es dann als Submodul zum erweiterten Versionsrepo hinzufügen, sollten Sie in der Lage sein, Änderungen am Submodul im erweiterten Repo zu verfolgen und zu übernehmen, während Sie das private einfache Repo entwickeln.
quelle