Организация проекта плагина / функции / обновления сайта Eclipse в SVN

#eclipse #svn #eclipse-plugin

#eclipse #svn #eclipse-плагин

Вопрос:

Мне нужна рекомендация о том, как организовать проекты плагина / функции / обновления сайта Eclipse в SVN. У меня есть следующие проекты Eclipse:

 Plug-in 1
Feature 1
Plug-in 2
Feature 2
Update Site
  

Вот некоторая дополнительная информация:

  • Функция 1 — это функция для плагина 1, и так далее, очевидно.
  • Оба плагина являются частью одного продукта, но их можно выборочно установить, установив или сняв галочку с желаемой функции в диалоговом окне Установка нового программного обеспечения.

Мне интересно, должны ли все эти проекты находиться под «магистралью» или у каждого из них должна быть «ветка / тег / магистраль» под ними. Или, возможно, сам проект Eclipse следует организовать по-другому.

Ответ №1:

Альтернативой является использование одной магистрали / для всех ваших проектов. Вот как я разместил свои плагины eclipse, и я следовал некоторым примерам других крупных проектов плагинов eclipse, таких как JBoss tools, при создании своей структуры.

/ магистраль/eclipse/плагины/ Плагин 1
/ магистраль/eclipse/плагины/ Плагин 2
/ магистраль/eclipse/функции/Feature 1
/магистраль/eclipse/функции/Feature 2
/ магистраль/ eclipse/ обновление сайта

И тогда у вас были бы соответствующие
/branches/1.0.x/eclipse /…
/теги/1.0.0/eclipse/…

Таким образом, когда вы создаете тег, вы копируете все, что находится в папке eclipse /, все плагины, функции и состояние сайта обновления, поскольку вы, вероятно, хотите пометить состояние всех плагинов и функций сразу и перенести это на сайт обновления, вместо того, чтобы помечать каждый плагин / функцию отдельно.

Комментарии:

1. Спасибо за ваш комментарий. Да, я осмотрелся, и многие плагины, такие как subclipse и xtext, похоже, сделали это так, как вы описываете. В моем нынешнем виде это неплохо, поскольку кодовая база не такая уж большая, но я могу переключиться в ближайшее время, пока не стало слишком поздно.

Ответ №2:

Любой ответ был бы субъективным, поэтому вот мой:

Все 5 ваших проектов Eclipse будут магистральными, со своими собственными ветвями и тегами. Вы можете поместить все магистрали проекта в папку в Subversion, чтобы вы и другие знали, что они относятся к одному и тому же продукту.

Комментарии:

1. Да. Это то, что я решил сделать вчера. Спасибо за предложение!