Как объединить крупные проекты в Eclipse?

Я работал с ответвлениями в течение достаточно долгого времени теперь, но я всегда использовал инструменты командной строки, чтобы сделать фактическое слияние. Однако теперь я должен сделать это от Eclipse только. Переходя и объединяющий быть широко использованной функцией систем SCM много лет теперь, я ожидал, что Eclipse, чтобы иметь хороший имел поддержку ее, но это просто, кажется, не имеет место.

В настоящее время я работаю над продуктом, который создается нескольких проектов, которые должны перейтись вместе. При слиянии изменений от соединительной линии до ответвления обычно я выполнил бы следование из корня контроля ответвлений: (Я использую Подверсию в качестве примера здесь, но проблемы должны относиться к другим инструментам SCM также.)

svn update
svn merge ^/trunk
svn commit -m "Merged from trunk"

Возможно, зафиксируйте некоторые конфликты в середине, но это обо всем, что я должен сделать. Однако в Eclipse я могу только объединиться на уровне проекта, который имеет следующие недостатки:

  • Я не могу объединить содержание корневой папки, только содержание отдельных проектов. То же идет для обновления, BTW.
  • Если структура проекта изменяется на соединительной линии (например, новый проект был добавлен), те изменения не становятся объединенными вообще. То же для обновления, снова.
  • Слияние не является атомарным. Если фиксация происходит на соединительной линии во время слияния, вещи могут быть испорчены в моей рабочей копии. (Это может работаться вокруг, но не удобно.)

Эти ограничения кажутся довольно простыми от того, что Eclipse не знает о корневой папке, поскольку это проверяет отдельные проекты от SVN.

Мой вопрос: я пропускаю что-то, или действительно невозможно использовать Eclipse, в некотором роде подобный тому, что я сделал бы из командной строки? И если действительно невозможно, затем как другие справляются с этим? Все используют внешние инструменты как командная строка или TortoiseSVN?

8
задан John Meagher 15 January 2010 в 18:03
поделиться

3 ответа

Ваше наблюдение является правильным. Eclipse управляет операциями «Team», таких как SVN на уровне проекта. Итак, вы ничего не пропускаете; -)

Да, вы должны использовать внешние инструменты для объединения целых ветвей. Черепаха делает это красиво.

3
ответ дан 5 December 2019 в 22:18
поделиться

в Eclipse, SVN разветвление и объединение работает хорошо для единых проектов, у меня не было никаких проблем при работе с одним проектами, которые были разветвлены и должны быть объединены.

Тем не менее, если несколько проектов необходимо иметь дело с одним подразделением, то, похоже, это не возможно иметь дело непосредственно в Eclipse, каждый проект должен будет иметь дело индивидуально.

0
ответ дан 5 December 2019 в 22:18
поделиться

То, что вы упомянули, действительно является ограничением. Обычно я просматриваю всю структуру папок, а затем импортирую отдельные проекты в затмение. Когда мне нужно выполнить операцию над всем хранилищем, я делаю это вне затмения, используя либо командную строку, либо Tortoise SVN.

Также больно, что когда кто-то добавляет новый плагин (я разрабатываю приложение Eclipse RCP), мне нужно вручную добавить его в список проектов, так как Eclipse не знает о корне всех проектов.

0
ответ дан 5 December 2019 в 22:18
поделиться
Другие вопросы по тегам:

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