/ / Projekt abhängig von anderen Projekten aus mehreren Quellen - git, git-submodules, git-subree

Projekt abhängig von anderen Projekten aus mehreren Quellen - git, git-submodule, git-subtree

Ich habe also ein Projekt A, das Projekt B verwendet. Also habe ich B als Teilbaum für das Projekt A markiert und die Änderungen von B zu A von Zeit zu Zeit zusammengeführt. Es gibt auch ein Projekt, das ich C verwenden möchte, C ist auch ein Unterbaum des Projekts B. Aber ich möchte C als Unterbaum unabhängig in meinem Projekt hinzufügen und auch nicht zwei Kopien der Codebase haben C im Projekt A. Wie kann ich dieses Problem lösen? Jede Hilfe wird geschätzt. Vielen Dank.

Antworten:

2 für die Antwort № 1

Das Problem mit dem Teilbaum ist, dass C Teil der B-Historie ist.

Wenn Sie ein B ohne C als Teilbaum referenzieren können, können Sie die Submodulroute wählen:

  • fügen Sie C als Submodul zu A hinzu
  • fügen Sie C als Submodul zu B hinzu
  • Stellen Sie sicher, dass A und B auf dasselbe C SHA1 verweisen
  • Aktualisieren Sie nur das C von A (git submodule update), um nur eine C-Quelle zu erhalten.

Die Idee ist:

  • zwei Verweise auf C beibehalten (um eine mögliche Diskrepanz zwischen dem von A verwendeten C und dem von B verwendeten zu erkennen)
  • Aktualisieren Sie nur eines der beiden C-Submodule.