Я работал с ответвлениями в течение достаточно долгого времени теперь, но я всегда использовал инструменты командной строки, чтобы сделать фактическое слияние. Однако теперь я должен сделать это от Eclipse только. Переходя и объединяющий быть широко использованной функцией систем SCM много лет теперь, я ожидал, что Eclipse, чтобы иметь хороший имел поддержку ее, но это просто, кажется, не имеет место.
В настоящее время я работаю над продуктом, который создается нескольких проектов, которые должны перейтись вместе. При слиянии изменений от соединительной линии до ответвления обычно я выполнил бы следование из корня контроля ответвлений: (Я использую Подверсию в качестве примера здесь, но проблемы должны относиться к другим инструментам SCM также.)
svn update
svn merge ^/trunk
svn commit -m "Merged from trunk"
Возможно, зафиксируйте некоторые конфликты в середине, но это обо всем, что я должен сделать. Однако в Eclipse я могу только объединиться на уровне проекта, который имеет следующие недостатки:
Эти ограничения кажутся довольно простыми от того, что Eclipse не знает о корневой папке, поскольку это проверяет отдельные проекты от SVN.
Мой вопрос: я пропускаю что-то, или действительно невозможно использовать Eclipse, в некотором роде подобный тому, что я сделал бы из командной строки? И если действительно невозможно, затем как другие справляются с этим? Все используют внешние инструменты как командная строка или TortoiseSVN?
Ваше наблюдение является правильным. Eclipse управляет операциями «Team», таких как SVN на уровне проекта. Итак, вы ничего не пропускаете; -)
Да, вы должны использовать внешние инструменты для объединения целых ветвей. Черепаха делает это красиво.
в Eclipse, SVN разветвление и объединение работает хорошо для единых проектов, у меня не было никаких проблем при работе с одним проектами, которые были разветвлены и должны быть объединены.
Тем не менее, если несколько проектов необходимо иметь дело с одним подразделением, то, похоже, это не возможно иметь дело непосредственно в Eclipse, каждый проект должен будет иметь дело индивидуально.
То, что вы упомянули, действительно является ограничением. Обычно я просматриваю всю структуру папок, а затем импортирую отдельные проекты в затмение. Когда мне нужно выполнить операцию над всем хранилищем, я делаю это вне затмения, используя либо командную строку, либо Tortoise SVN.
Также больно, что когда кто-то добавляет новый плагин (я разрабатываю приложение Eclipse RCP), мне нужно вручную добавить его в список проектов, так как Eclipse не знает о корне всех проектов.