Mein erster Instinkt ist es, normal zu verzweigen (mit p4 integrieren), und dann verwenden Sie ein IDE- oder Sed-Skript, um die Paketnamen zu ändern. Aber das macht die zukünftige Integration aus dem Kofferraum extrem schmerzhaft.Wie mache ich eine Verzweigung mit einem anderen Java-Paketnamen?
Antwort
Wenn Sie die Paketnamen ändern müssen, dann ist das wirklich das Beste, was Sie tun können. Integrationen werden wahrscheinlich nicht sein, die schlecht sind, obwohl. Stellen Sie nur sicher, dass Sie die Umbenennungen rückgängig machen, wenn Sie die Zweigstelle zunächst neu integrieren. Dies wird wissen lassen, dass die Paketanweisungen "synchronisiert" sind, obwohl sie unterschiedlich sind. Zusammenführungskonflikte in den Anweisungszeilen des Pakets sollten dann äußerst selten sein.
Der große Ärger wäre, wenn Sie später neue Klassen hinzufügen und sie dann in den anderen Zweig integrieren. Sie müssen daran denken, immer wieder zu reintegrieren und das Umbenennen des Pakets rückgängig zu machen.
Zukünftige Integrationen sollten kein Problem sein. Perforce erkennt diese als Änderungen in der Branche, und wenn Sie eine Änderung aus dem Stamm schieben, wird es Sie nicht über sie ärgern.
Selbst in den häufiger auftretenden Fällen, in denen Sie Ihre Änderungen von der Verzweigung zurück in den Stamm schieben, sollte Perforce die Integration nur beim ersten Mal vorschlagen. Durch Einschränken des Integrationsrevisionsbereichs bei späteren Revisionen sollten die Paketnamenänderungen nicht für die Integration vorgeschlagen werden.
Die Art, wie Sie vorschlagen, würde gut funktionieren, und Sie sollten von Perforce keine Probleme erwarten.
Allerdings kann ich folgenden Vorschlag hinzufügen -
Zuerst die Integration gefolgt von commit - und nur als zweites Commit ändern Sie die tatsächlichen Namen. Dies würde es ermöglichen, die Änderungen in der Geschichte viel deutlicher zu sehen, ohne einen Vergleich zwischen Zweigen zu erfordern.
Wenn die Änderung Umbenennung von Dateien erfordert, was es wahrscheinlich macht - es
- Sie würden die Niederlassung in einem nicht-Kompilierung Zustand für eine Minute. Dies ist ein akzeptabler Kompromiß für die Sichtbarkeit, die Sie gewinnen.
- Sie möchten wahrscheinlich eine Verzweigungsspezifikation erstellen, um diese Umbenennung zwischen den beiden Zweigen widerzuspiegeln. Es würde Integrationen erleichtern.
- 1. Wie mache ich virtualenv mit einem anderen Interpreter?
- 2. Wie füge ich eine Verzweigung zu einer anderen Verzweigung in GIT zusammen?
- 3. Wie überprüft man, wenn eine Verzweigung versehentlich mit einer anderen Verzweigung in Git zusammengeführt wird?
- 4. Wie kann ich meine funktionierende Git-Verzweigung von einer anderen Verzweigung aktualisieren (entwickeln)?
- 5. Wie erstelle ich eine Verzweigung in SVN?
- 6. Wie mache ich eine horizontale Tabelle mit einem festen thead?
- 7. Wie mache ich einen Einsatz mit einem
- 8. Wie mache ich eine UIImageView mit Touch, um zu einem anderen ViewController zu gelangen?
- 9. git Wie man eine Verzweigung in die Master-Verzweigung durch vollständiges Überschreiben der Master-Verzweigung einfügt
- 10. Wie mache ich eine Schattenbox mit Farbverlauf?
- 11. Wie mache ich eine ListPreference mit Checkbox
- 12. Wie mache ich eine Klasseneigenschaft mit mox?
- 13. Wie mache ich eine Säuberung nach SIGKILL?
- 14. Wie erstellt man eine Verzweigung, ohne die Verzweigung zu prüfen?
- 15. Wie mache ich eine Knopfanimation?
- 16. Wie unterscheidet sich eine annullierte Verzweigung von einer regulären Verzweigung?
- 17. Wie mache ich mehrere Arrays zu einem?
- 18. Wie mache ich eine ganze Tabelle zu einem Button/Link zu einer anderen HTML-Seite?
- 19. Wie mache ich eine Zeitsequenz?
- 20. Wie mache ich eine wirklich transparente Kontrolle?
- 21. Wie mache ich eine JavaScript-Funktion, um nach einem anderen ausgeführt zu werden?
- 22. Wie mache ich eine 3-Tier mit PHP
- 23. Wie schalte ich den Code jedes Mal auf den Webserver, wenn ich einen Commit in eine Verzweigung mache?
- 24. Wie erweitere ich eine Klasse mit einem anderen Konstruktor?
- 25. Wie mache ich eine natürliche Sortierung auf einem NSArray?
- 26. Wie mache ich eine XPath-Abfrage auf einem DOMNode?
- 27. Wie mache ich eine JAVASCRIPT-Variable gleich einem HTML-Attribut?
- 28. Wie mache ich eine Teilübereinstimmung in Elasticsearch?
- 29. Wie mache ich eine Variable local
- 30. Verzweigung mit Mercurial SCM