Организация проекта, который использует несколько языков?

Я в настоящее время работаю над проектом, который имеет компоненты в жемчуге.NET, C/C++ и Java. Эти компоненты взаимосвязаны, но не связываются с тем же планом выпуска. Из-за совсем других требований сборки/тестовой среды, смешивая их всех в к тому же / мусорному ведру/src / lib / и т.д. / тестовая иерархия является немного громоздким.

Что некоторые хорошие организационные иерархии должны использовать в управлении исходным кодом при контакте с проектом этой природы? Я в настоящее время склоняюсь к каждому языку, имеющему его собственное ответвление:

repo/project1/perl/main/...

repo/project1/.NET/main/...

repo/project1/Java/main/...

Как Ваша рекомендуемая иерархия изменилась бы, если у них DID есть связанный план выпуска?

6
задан Jon Seigel 2 April 2010 в 03:36
поделиться

1 ответ

Я думаю, что вы устали, на линии. Если вы выпустите проект в целом со всеми компонентами, в отличие от того, что он отделительно выпустить каждый компонент, то, я мог бы использовать SVN: внешние для разных местоположений репо или совершенно разных репозиториев, а затем просто ассоциируйте сборку через внешнюю с помощью последней совместимы с меченым отпуском компонента. Отказ Или при использовании Git тогда используйте подмодулы, чтобы сделать много то же самое.

/repo/project1
  trunk/
    svn:external .Net /repo/project1/components/.Net
    svn:external perl /repo/project1/components/perl
    svn:external Java /repo/project1/components/Java
    -- other integration code or what have you --
  tags/
  branches/
  components/
    .Net/
      trunk/
      tags/
      branches/
    Java/
      trunk/
      tags/
      branches/
    perl/
      trunk/
      tags/
      branches/

Точная структура будет зависеть от рабочего процесса и именно то, как компоненты интегрированы, но вы получаете идею.

2
ответ дан 17 December 2019 в 20:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: