Hat notgedrungen Spur Deltas einzigartig für einen changeset oder ist es nur speichert die gesamte Datei?

StackOverflow https://stackoverflow.com/questions/4272022

  •  28-09-2019
  •  | 
  •  

Frage

Ich habe versucht, einige Arbeit zu fusionieren, dass ein Entwickler hat in einem Arbeitszweig zu einem stabilen Zweig. Die Dateien a, b und c war von mindestens einem Dutzend Änderungsmengen, da der gemeinsame Vorfahre von STABLE und HEAD Zweige wurden getrennt geändert.

Ich erwartete, dass seit diesem Entwickler geändert fünf Zeilen in jeder Datei a, b und c, dass, wenn ich vom Kopf bis zu dem Stable-Zweig integriert, würde ich seine Veränderungen in meinem anstehenden changset bekommen, was könnte ich dann Kritik und begehen.

Stattdessen scheint es, dass es jede Veränderung stattgefunden hat, dass eine Datei passiert, da die zwei verzweigten wurden und angewandt all diese Veränderungen, die meine Kollegen in der Arbeitskopie existieren auch.

Mit anderen Worten, es scheint kein Datensatz in einer notgedrungen changeset zu sein, von dem, was mein Kollegen tatsächlich verändert, im Vergleich zu, was die Datei, bevor enthielt.

Wenn ich die eingereichten Änderungssätze finden, kann ich den Unterschied zwischen meinen Kollegen sieht Version der Datei und die unmittelbar vorhergehenden Version. Aber dann, das nicht der Fall, so scheint es, festzustellen, was in der Zusammenführung geht.

Es wird keine changeset Mittelwert „eine Reihe von Änderungen zwischen rev X und Revision X + 1 einer Datei“? Kann jemand mir helfen, zu verstehen, was es heißt, „eine changeset zu integrieren“, wenn in der Tat, es scheint, was ist, dass Perforce nicht ändert nicht verfolgt, verfolgt sie Dateien.

Es ist durchaus möglich, dass ich alles falsch mache, und ist dankbar für jeden Zeiger, wie es ist, dass Sie genau zusammenführen können und sicher zwischen Perforce Arbeitszweigen und stabilen Zweigen, ohne Sachen, die Sie nicht wollen, zu erhalten integriert in den stabilen Zweig integriert zu werden. Es scheint, dass egal wie einfach die Änderungen, die tatsächlich in dem Produkt gemacht bekommen, die Zusammenführung nicht wirklich Arbeit für mich.

War es hilfreich?

Lösung

Perforce hat Änderungen speichern text Dateien als Delta (Binär-Dateien in ihrer Gesamtheit bei jeder Änderung gesendet wird gespeichert werden). Es klingt wie Sie nicht richtig den Revisionsbereich während Ihrer Integration zu beschränken.

sagen Sie das Arbeitszweig hat „... von mindestens einem Dutzend Änderungsmengen geändert, da die ... Zweige getrennt wurden.“ sie Nennen wir Änderungslisten 1-12. Wenn ich Sie richtig verstehe, versuchen Sie die Änderungen in nur einer dieser Änderungslisten zu integrieren, und nicht alle von ihnen.

Während einer einfachen Integrationsoperation Perforce wird vorausgesetzt, dass Sie alle Änderungen integrieren möchten, die eingereicht wurden, da der Zweig gemacht wurde. Wenn Sie nur eine Teilmenge dieser Veränderungen wollen, müssen Sie einen Revisionsbereich angeben. Also, wenn Sie nur die Änderungen integrieren mögen, die zwischen Änderungs aufgetreten 11 und 12, würden Sie, dass der Revisionsbereich angeben, wie in der Abbildung gezeigt. (Hinweis: Der Revisionsbereich ist inklusive Angabe so eine Reihe von 11 bis 12, wie ich in diesem Screenshot tue tatsächlich gehört Änderungen in Änderungslisten 11 und 12. Wenn Sie nur wollen, um die Änderungen integrieren in der Änderungsliste 12 aus, geben Sie 12 in beiden Bereichen des Revisionsbereich).

Seien Sie sich bewusst sein, dass die unvermeidlichen Konflikte zu lösen schwierig sein, auftreten können, je nachdem, wie weit die Zweige haben abwich und die Art der Änderungen.

alt text

Andere Tipps

Könnten Sie das konkretisieren, wie Sie die Integration getan hat? Meine Vermutung ist, dass Sie wahrscheinlich integriert haben alle Änderungen bis zu diesem Änderungsliste, anstatt nur, dass Änderungs nur. Wenn dem so ist alles, was Sie tun müssen, um die gleiche Änderungsliste, da sowohl die obere und untere Grenze der Integration zu spezifizieren.

Es ist sehr einfach in der visuellen Client zu tun, aber ich bin mir nicht sicher über die genaue Befehlszeilenoption Sie verwenden müssen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top