Ich arbeite an einem Projekt, das GIT als Hauptversionskontrollsystem für Trunk, die offiziellen Zweige und die meisten Teilprojekte / inoffiziellen Zweige verwendet. Aus diesem Grund möchte ich meine eigene Niederlassung dazu bringen, GIT zu verwenden, damit der Rest der Community mit dem ihnen bekannten System auf meine Niederlassung zugreifen kann.
Ich arbeite jedoch an einem Teil des Projekts, der sowohl offizielle als auch inoffizielle Zweige überlappt, zusammen mit einigen Patches, die niemals in den Trunk gelangen. Daher muss ich in der Lage sein, meine Patches getrennt zu halten, damit alle verwendet werden können Mein Zweig und selektive Patches sollen für den Kofferraum verwendet werden. Dies neigt natürlich dazu, Quecksilberwarteschlangen zu verwenden.
Gibt es einen Grund, warum ich mercurial nicht für mein eigenes lokales Repository verwenden kann, sondern das Ganze auf GIT- und Mercurial-gehostete Repositorys übertrage? Oder besser gesagt, gibt es einen guten Grund, dies nicht zu tun? Ich bin sicher, dass es möglich ist.
quelle
Antworten:
Sie sollten dies nicht aus dem gleichen Grund tun, aus dem Sie keine Variable haben sollten, die versucht, den Status einer anderen zu verfolgen. Möglicherweise verlieren Sie den Überblick darüber, welche Version maßgeblich ist.
quelle
Ich mache das derzeit mit git und svn. Es gibt zwar Gründe, dies nicht zu tun, es gibt jedoch keine allgemeine Regel. Git kann Dinge tun, die SVN nicht kann. Ich bin an diese Funktionen gewöhnt, sodass mein Workflow und damit die Produktivität steigen, wenn ich Git verwenden kann. Wenn ich die Vor- und Nachteile in meiner Situation betrachte, wäre ich dumm, nicht beide zu verwenden. Sie sollten Ihre Situation genauso sehen. (Übrigens sind die einzigen Nachteile für mich, dass ich ein einzelnes kleines Skript ausführen muss, um git mit svn zu synchronisieren.)
quelle
Sie können Ihre Patches in Git getrennt halten: Führen Sie jeden Patch in einem eigenen Zweig aus und fügen Sie sie dann wie gewünscht selektiv zusammen.
quelle