SVN в Eclipse распространяется на два лагеря. Люди SVN разработали плагин под названием Subclipse. У людей Eclipse есть плагин под названием Subversive. В общем, они оба делают то же самое. Каковы преимущества и недостатки каждого?
Каковы плюсы и минусы модулей SVN для Eclipse, Subclipse и Subversive?
Ответ 1
Оба очень похожи, но Subversive - это "поставщик eclipse svn". В основном я использую Subversive из-за нескольких удобных функций:
Группирование истории
Когда я просматриваю историю ветки вместо того, чтобы просто видеть кучу строк для каждой фиксации, она может группировать коммиты на сегодняшний день, неделю и т.д.
Сопоставление строк, ветвей и тегов
Subversive предполагает макет svn по умолчанию: соединительная линия, ветки, теги (которые вы можете изменить), поэтому всякий раз, когда вы хотите пометить или разветкить его, нажмите один раз, и вы укажете имя тега или ветки.
Как я уже сказал, это небольшие отличия, которые я просто считаю удобными. Оба работают отлично с mylyn, но в целом на самом деле не так много различий с этими двумя расширениями.
Слияние с Subversive - это боль, хотя (не пробовал Subclipse), я никогда не мог успешно слиться. Предварительный просмотр слияния велик, но он никогда не завершит слияние, иначе он займет много времени. В большинстве случаев я завершаю слияние через командную строку без каких-либо проблем.
Ответ 2
Я отвечу на это. Я возглавляю проект для Subclipse, и я управляю всеми выпусками и т.д. Для проекта. Поэтому мои предубеждения очевидны.
Я не собираюсь слишком много говорить о Subversive. Ясно, что есть пользователи, которые его используют и любят. Функционально продукты очень похожи, так как оба являются зрелыми продуктами.
Одна вещь, о которой я хочу прокомментировать, - это такое понятие, что каким-то Subversive является плагином "официального Eclipse". Это просто неверно, поскольку такого обозначения нет. Eclipse - это фонд с открытым исходным кодом, и любой проект, который хочет следовать своим правилам, процессам и требованиям IP и т.д., Может разместить свой проект с базой. Это не делает вас более или менее официальными, чем любой другой плагин.
Я также отмечу, что Subversive остался на этапе "Инкубации" с момента его создания, и мне не кажется, что он когда-либо будет соответствовать требованиям для окончания. Как вы можете видеть здесь, в проекте был только один коммиттер, а активность активности сократилась до очень низких уровней.
Subversive - поставщик услуг SVN
Итак, почему вы должны использовать Subclipse? Мы активно участвуем в Subversion. Я являюсь членом PMC Subversion и поддерживаю привязки языка Java, чтобы мы (и другие проекты, такие как Subversive) могли использовать API.
Мы работаем напрямую с Subversion, чтобы определить и улучшить API и убедиться, что необходимые функции доступны таким клиентам, как Subclipse. Мы также тесно работаем и сотрудничаем с интеграцией Visual Studio (AnkhSVN) и группами TortoiseSVN, чтобы убедиться, что существует относительно последовательный пользовательский интерфейс для клиентов.
Subclipse по-прежнему активно поддерживается, и мы поддерживаем поддержку версий Eclipse с 3.2 по 4.2. Мы всегда стараемся прислушиваться к отзывам и включать идеи сообщества. Последние выпуски 1.8.x включают внутренние изменения, которые значительно улучшают производительность Eclipse при работе с большими проектами (то есть когда вы действительно видите это).
Subclipse проложил путь в таких областях, как поддержка отслеживания слияния, где мы тесно сотрудничали с командой Subversion, сначала добавив эту функцию в 1.5, а затем развивая ее в последующих выпусках. Мы часто были первоначальными потребителями нового API и предоставляли проекту обратную связь, необходимую для упрощения функции. Мы также представили графическую версию графического представления пару лет назад, став первыми, кто долгое время предлагал пользователям Eclipse функцию.
Если в Subversive есть определенные функции пользовательского интерфейса, которые люди хотели бы видеть в Subclipse, я бы посоветовал вам посетить наше сообщество и участвовать в наших дискуссионных форумах. Возможно, другие пользователи разделяют ваши взгляды, и мы можем улучшить интерфейс пользователя.
Форум [Субклип-пользователи].
Eclipse 4.2 является последней версией на момент публикации, но можно с уверенностью предположить, что Subclipse будет поддерживать все будущие выпуски Eclipse по мере их создания.
Ответ 3
С каждой новой версией Eclipse я устанавливаю Subversive, потому что это стандарт, предоставляемый Eclipse. И каждый раз у него возникают проблемы с распознаванием моих ранее существовавших проектов.
Итак, я в конечном итоге удаляю Subversive и устанавливаю Subclipse, который работает чудесно. Я также часто использую SVN из командной строки, а также в Eclipse, и у Subclipse нет проблем с этим.
Ответ 4
После прочтения этого сообщения я переключился на Subclipse hands down.
http://eclipsezone.com/eclipse/forums/t77149.rhtml#92035407
Ответ 5
Если вы сильно сходите с Subversion, вы, вероятно, предпочтете CollabNet Desktop - Eclipse Edition. Вы должны зарегистрировать учетную запись в CollabNet, чтобы загрузить ее, но она бесплатна. Это, по сути, Subclipse с лучшим интерфейсом слияния.
Я не являюсь аффилированным лицом CollabNet.
CollabNet сделала свой улучшенный клиент слияния доступным для незарегистрированных пользователей Subclipse. Вы получаете его, выбирая функцию CollabNet Merge Client при установке Subclipse с сайта обновлений.
Ответ 6
Я бы сказал Subclipse, поскольку я даже не мог заставить Subversive работать;)
Ответ 7
Я на самом деле думаю, что они оба сосут. Использование TortoiseSVN - это гораздо лучшее решение, на мой взгляд. Он гораздо более надежный и имеет тенденцию работать только лучше, и у меня всегда были проблемы с интеграцией с Subclipse и Subversive.
Ответ 8
У них обоих есть довольно отвратительные бородавки, но я не мог заставить Subversive работать с проектом, который я проверил из командной строки, и это было для меня показательным.
Ответ 9
I попробовал оба из них, и оба Subclipse и Subversive ужасны. Оба сложны для установки. Если вы используете Subversive, вы не можете использовать внешний SVN-клиент.
Однако вам нужно, чтобы в Eclipse был установлен SVN-клиент, чтобы отслеживать изменения, а также не повредить локальный репозиторий.
У меня установлен Subclipse, но используйте TortoiseSVN на самом деле делать comitting/tagging/branching/merging.
Ответ 10
Подзаголовок, потому что по крайней мере он работает.
Подрывник был для меня ведром неудачи. Он не будет хорошо играть со всеми моими старыми проектами, которые я проверил с Subclipse.
Ответ 11
Конечно, оба плагина IDE имеют свои проблемы. Но не исключает параллельного использования других решений, таких как TortoiseSVN или командной строки. Я использую все три для моих проектов на работе.
Важно помнить, что все ваши клиентские программы SVN должны использовать тот же формат SVN файла, который отличается от версий SVN, или вы просите о проблемах.
Другая проблема, которую мы обнаружили, - это когда ваше клиентское программное обеспечение использует другой формат файла SVN, чем сервер. (В файловом формате я имею в виду то, как вся информация представлена во всех невидимых .svn файлах, которые эффективно записывают, что SVN должно знать о ваших файлах проекта.) Это может нанести ущерб. Там зарегистрирована ошибка между 1.5 сервером и 1.6 клиентами, но я не могу найти ссылку прямо сейчас.
У нас были проблемы с запуском верхнего (IMO) Subclipse 1.6 плагина из-за несовместимости с нашим сервером SVN 1.5.5. Итак, мы вернулись к Подрывнику. Он работает нормально, хотя и медленный и несколько глючный (но улучшающийся). Однако мы переключимся на Subclipse, когда обновляется наш сервер. И да, мы проверяем наши проекты с помощью TortoiseSVN и импортируем их в Eclipse (это быстрее).
Мы обнаружили, что, как говорили другие плакаты здесь, это не сработает, если мы запустим более новые версии TortoiseSVN, которые пишут файлы в формате 1.6.x, но когда мы вернулись к TortoiseSVN 1.5.x, это сработало просто отлично. То же самое относится к клиенту командной строки (который мы используем с нашими Ant задачами.)
Ответ 12
Я решил пойти с Subclipse, поскольку он наиболее тесно связан с проектом Subversion и поэтому более вероятно, что он лучше справится с основной функциональностью SVN. Если вообще не выполняется какая-либо функция, у меня есть TortoiseSVN в качестве резервной копии.
Ответ 13
Просто обновление. Недавно я переустанавливал Eclipse и сталкивался с выбором Subclipse vs Subversive. У меня также была моя доля проблем, пытающихся заставить Subversive работать, поэтому я пошел в Subclipse.
Он отлично установлен на моей 64-битной машине Linux и работает отлично. Я применил наиболее распространенные функции, такие как "Обновить", "Зафиксировать", ".." и "Ярлыки", и это взрыв. Слияние тоже хорошо, хотя для больших слияний я все равно обращаюсь к TortoiseSVN. Я попробовал его с 3.5 и 3.6, и оба они отлично работают. В итоге я использовал 3.5, потому что по какой-то причине привязка ключей не работала с 3.6.
Ответ 14
Если вы используете svn + ssh в качестве протокола для доступа к вашему репозиторию, я настоятельно рекомендую вам выбрать Subclipse: Subversive недостаточно интеллектуальна, чтобы правильно запомнить ваши учетные данные и запрашивает имя пользователя и закрытый ключ каждый раз, когда вы обновляете свою рабочую копию, а также для каждого svn-external, который вы, возможно, настроили.
Параметры "запомнить учетные данные" в этом контексте нарушены и были с первого публичного выпуска Subversive.
Ответ 15
Если вы используете один из них в своей компании и, возможно, даже хотите связать их с собственными продуктами на основе Eclipse, ваша жизнь намного проще с Subclipse, потому что она доступна в рамках общедоступной лицензии Eclipse Public.
Subversive, с другой стороны, нуждается в так называемых соединителях, чтобы полностью работать. И у них есть отдельные и разные лицензии. Таким образом, вы можете получить две или три разные лицензии только для функций Subversive, в то время как все другие плагины Eclipse находятся под одной EPL. Это также причина, по которой эти соединители не размещаются на eclipse.org.
И поэтому они динамически загружаются после установки Subversive (что также означает, что просто зеркалирование сайта обновления eclipse.org не дает вам удобной автономной установки Subversive в сети вашей компании).
Ответ 16
До мая 2008 года я использовал Subclipse, но из-за проблем с некоторыми проектами я переключился на Subversive и использую это без проблем. Если вы делаете что-то необычное, как headless Buckminster, то Subversive определенно тот, с которым нужно идти.
Ответ 17
Если вы используете TortoiseSVN и регулярно обновляете версию, вы можете найти Eclipse с Subversive, теряя всю информацию SVN и бросая некоторые страшные ошибки.
Причина, по которой новая версия TortoiseSVN добавляет новые метаданные, которые Eclipse Subversive не понимает, если вы также не обновляете свои соединители SVN Eclipse.
Обычно я использую разъем SVNKit, поэтому TortoiseSVN 1.5.x будет работать с разъемом Eclipse SVNKit 1.5.x, а TortoiseSVN 1.6.x будет работать с разъемом Eclipse SVNKit 1.6.x.
Ответ 18
+1 Подзаголовок
-1 Подрывная
Subversive запутывается после даже незначительного рефакторинга и имеет проблемы с проверкой, как указано выше.
Среда: STS 2.7.2 (на основе Galileo)
Ответ 19
Subversive имеет больше преимуществ, чем Subclipse, как указано ниже. Но только одна функция Subversion не имеет такого критического значения в использовании ветвей. Поэтому мы должны использовать Subclipse.
Преимущества Subversive:
- Вид и значки более информативны.
- После фиксации элементов синхронизации обновляется, заблокированный файл закрывается.
Преимущества Subclipse
- способность сравнивать две ветки
Ответ 20
Для меня ни лучше, ни хуже, но Subversive - это плагин по умолчанию SVN в платформе Eclipse Ganymede, поэтому есть шанс, что он лучше интегрируется с Eclipse.
Ответ 21
В дополнение к ответу Брендонов:
Мы используем Subversion с версии 1.5.1 и сначала используем Subclipse. Но поскольку мы сильно зависим от функции слияния, мы переключились на Subversive, что более удобно и имеет отдельный параметр Reintegrate в диалоговом окне объединения.
Одна ошибка, которая может помешать слиянию, заключается в том, что если вы явно выбираете ревизии, она не берет последнюю ревизию. Например. "101-100" не сливает r100, а "100", таким образом, вообще не сливает ничего. (версия 0.7.5)
И он использует те же индикаторы, что и плагин CVS.
Ответ 22
Пока я работал с Helios, у меня есть небольшое предпочтение Subclipse из-за его превосходной поддержки свойств bugtraq
(подробнее здесь).
В представлении "История" отображается отдельный столбец (под заголовком bugtraq:label
, отображающий BUGID
s)), а в контекстном меню выделено действие "Открыть URL-адрес ошибки" (ссылка на bugtraq:url
) - я не мог выяснить, как получить доступ к любой из этой информации с помощью Subversive.
Ответ 23
Я использовал оба варианта, и, хотя Subclipse был для меня сломанным, Subversive (по крайней мере, с предыдущей версией) заблокировал учетную запись моего коллеги, когда он случайно ввел неправильные учетные данные (сетевой вход используется для доступа репозиторий подрывной деятельности).
Подзаголовок имеет тенденцию дезорганизоваться с течением времени. Если Eclipse не обновляется регулярно, Subclipse, похоже, теряет информацию о отслеживании файлов. Честно говоря, хотя у меня есть Easy Explorer Plugin, я использую Subversive (иногда) для истории и изменения информации, но я просто разбираюсь и использую TortoiseSVN для фиксации и обновления проектов, которые, как я знаю, я недавно изменил.
Ответ 24
Я использую Subversive, так как я обновился до Ганимеда. Я использую его с Eclipse в Linux (Ubuntu и Fedora Core), Windows XP и Mac OS X.5. Помимо некоторых проблем, получающих Subversion 1.5.1 для использования правильных библиотек безопасности в Mac OS, у меня не было никаких проблем. Учитывая, что он был принят в качестве технологического проекта Eclipse, я склонен делать ставки на него с точки зрения долгосрочных надежд.
Ответ 25
Я действительно не использовал его, но кажется, что Subversive поддерживает " Check Out As", как и встроенная поддержка CVS.
Как, чтобы взять проект из SVN и иметь возможность запускать его как веб-проект, можно было бы сделать это за один раз. Но чтобы получить тот же результат в Subclipse, я просто проверяю источники и запускаю:
mvn eclipse:eclipse -Dwtpversion=2.0
Ответ 26
Я только что обнаружил, что не могу понять, как просматривать свойства diff с Subclipse. В Subversive вы выбираете две ревизии в окне истории, щелкните правой кнопкой мыши и выберите сравнение свойств из всплывающего окна. Этого достаточно для того, чтобы я придерживался Subversive.
Причиной попытки переключения было подрывное странное поведение в ОС. X: некоторая автоматическая операция, называемая "обновление кэша svn", запустила процессор на аномальных уровнях после каждого запуска "svn update", всегда выполняя досадливо долгое время.
Ответ 27
FWIW, мы используем древнюю версию SVN-сервера (что-то 1.4), и я, кажется, помню, что в какой-то момент появилось обновление Subclipse, которое нарушило обратную совместимость, и суть была "никто не должен быть таким старой версии SVN в любом случае".
Subversive был единственным, кто, казалось, мог справиться с более старой версией. Я не могу вспомнить детали, хотя, извините.
Ответ 28
Мы пробовали как в нашей команде.
Так как Subclipse (один из Galileo/Helios) столкнулся с проблемой аутентификации нашего SVN-сервера через VAS, у нас не было проблем в другом месте, то есть клиент TortoiseSVN, браузеры (кроме Internet Explorer 7).
Итак, мы установили Subversive
, и проблема была решена.
Ответ 29
Преимущество Subclipse над Subversive... IT ACTUALLY WORKS!
Я использовал Subclipse давным-давно, когда разрабатывал совлокальный плагин для Eclipse, который зависел от Subclipse. Subclipse часть плагина никогда не была проблемой, хотя все Ant вещь по-прежнему немного смущает меня, но хорошая часть - это вы не должны понимать, как часть Ant работает, чтобы знать, как ее использовать.
Я пытаюсь установить PDT сегодня (это целый блог), а затем Subversive, потому что, как и многие, он изображается как "The Eclipse SVN Plugin". Мне не удалось сразу установить четыре разъема, поэтому мне пришлось устанавливать их по одному за раз и один за раз, когда я их пробовал, и по одному он не мог аутентифицироваться с сервером SVN.
Я пытаюсь использовать PDT и Subversive, потому что я хочу СОХРАНИТЬ время, а не тратить больше на разные проблемы с плагином.
Я удалил Subversive, установил Subclipse и подключился точно так же.
Сэкономьте время и хлопоты, идите в Subclipse с самого начала.
Ответ 30
Я также использовал оба. У меня была проблема, что у меня около 150 проектов в моей рабочей области, а Subversive займет очень много времени, когда я выбрал все плагины и сказал "синхронизировать репозиторий". Пользовательский интерфейс замерзнет в течение очень долгого времени. Я считаю Subclipse более стабильным.
В любом случае, я объединять инструменты много. Для некоторых задач, таких как проверка целых ветвей, я предпочитаю командную строку. Для других я использую TortoiseSVN. Я использую Subclipse в основном для просмотра истории и сравнения результатов непосредственно с инструментом, а иногда и для сравнения (я предпочитаю Beyond Compare для этого).