In unserem git-svn-verwalteten Projekt haben wir 3 Upstream-Projekte, die alle in nativen Git-Repositories auf GitHub gespeichert sind. Da der Quellcode dieser Upstream-Projekte unter unserer Kontrolle steht und sich häufig ändert, ist unsere derzeitige Lösung, nämlich die Build-Artefakte jedes Mal, wenn wir etwas ändern, erneut in das Superprojekt zu implementieren, ziemlich beschwerlich.Verwendung von Git-Submodulen in einem git-svn-Projekt
Was ich möchte, ist, dies haben:
parent project (git-svn):
--> submodule 1 (git)
--> submodule 2 (git)
--> submodule 3 (git)
Auf diese Weise die Quellcode für Submodule 1-3 zusammen mit den Quellen für das Super-Projekt kompiliert wird, aber ich kann Änderungen an Submodule schieben separat.
Die Frage ist: Was passiert, wenn ich git svn dcommit
auf dem übergeordneten Projekt? Funktioniert das überhaupt?
UPDATE Hm, ich nur eine einfache Projektstruktur aufgebaut und versucht, dieses Szenario zu ähneln, und ich diese Fehlermeldung erhalten, wenn sie auf dem Superproject zu dcommit versuchen:
a0301b11f3544a1e71067ff270eded65e4c8afbd doesn't exist in the repository at /opt/local/libexec/git-core/git-svn line 4775
Failed to read object a0301b11f3544a1e71067ff270eded65e4c8afbd at /opt/local/libexec/git-core/git-svn line 574
Irgendwelche Ideen/Vorschläge ?
In unserer Welt verwenden wir Hudson zum Erstellen und Bereitstellen von Submodulen in einem lokalen Repository wie Artifactory. Maven ist so konfiguriert, dass es sich die SNAPSHOT-Version schnappt, so dass sie jeden Tag eine neue Deployment-Version oder jedes Mal, wenn wir mit -U aufbauen, greifen. Hudson kann so konfiguriert werden, dass eine E-Mail für eine neue Bereitstellung gesendet wird. – OleTraveler
Aktualisieren Sie das Kopfgeld auf der Suche nach aktueller Antwort/Workaround. Ich denke, eine Antwort auf diese Frage ist, was ich suche: [Ist Git Svn mit Git Teilbaum kompatibel?] (Http://StackOverflow.com/Questions/13447705/is-git-svn-kompatibel-mit-Git- Unterverzeichnis) –
mögliches Duplikat von [git-svn - # Objekt # existiert nicht im Repository unter/opt/local/libexec/git-core/git-svn Zeile 4706] (http://stackoverflow.com/questions/ 2771033/git-svn-objekt-nicht-existierend-im-repository-at-opt-lokal-libexec-git-cor) –