2010-02-02 11 views
5

Ich arbeite derzeit an einem Projekt mit Komponenten in Perl, .NET, C/C++ und Java. Diese Komponenten sind miteinander verknüpft, sind jedoch nicht an denselben Veröffentlichungsplan gebunden. Aufgrund der sehr unterschiedlichen Build-/Testumgebungsanforderungen ist es ein wenig unhandlich, sie alle in die gleiche/bin/src/lib/etc/tests-Hierarchie einzuordnen.Organisieren eines Projekts, das mehrere Sprachen verwendet?

Welche Organisationshierarchien gibt es in der Quellcodeverwaltung, wenn es sich um ein Projekt dieser Art handelt? Ich beugte sich zur Zeit auf jede Sprache eine eigene Niederlassung mit:

Repo-/project1/perl/main/...

Repo-/project1/.NET/main/...

Repo/project1/Java/main/...

Wie würde sich Ihre empfohlene Hierarchie ändern, wenn sie einen freigegebenen Veröffentlichungszeitplan haben?

+1

Sieht aus, als ob Sie auf dem richtigen Weg sind ... –

Antwort

2

Ich denke, was Sie angelegt haben, ist auf der Linie. Wenn Sie das Projekt als Ganzes mit allen Komponenten freigeben und nicht jede Komponente einzeln freigeben, dann kann ich svn: externals zu verschiedenen Repo-Standorten oder völlig verschiedenen Repositories verwenden, dann verbinden Sie den Build über extern mit der neuesten kompatiblen getaggten Version einer Komponente . Oder wenn Sie git verwenden, dann verwenden Sie Submodule, um die gleiche Sache zu tun.

Die genaue Struktur hängt vom Workflow ab und davon, wie die Komponenten integriert sind, aber Sie bekommen die Idee.

Verwandte Themen