Каковы плюсы и минусы плагинов SVN для Eclipse, Subclipse и Subversive?[закрыто]

StackOverflow https://stackoverflow.com/questions/61320

Вопрос

SVN в Eclipse разделен на два лагеря.Сотрудники SVN разработали плагин под названием Подклип.У людей из Eclipse есть плагин под названием Подрывной.Вообще говоря, они оба делают одно и то же.Каковы преимущества и недостатки каждого из них?

Это было полезно?

Решение

Оба очень похожи, но подрывным является "eclipse svn provider".В первую очередь я использую Subversive из-за нескольких удобных функций:

Группировка истории

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

Отображение ствола, ветвей и тегов

Subversive использует макет svn по умолчанию:магистраль, ветви, теги (которые вы можете изменить), поэтому всякий раз, когда вы хотите пометить или разветвить, это делается одним щелчком мыши, и вы указываете название тега или ветви.

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

Слияние с Subversive - это боль, хотя (не пробовал Subclipse), я никогда не мог успешно объединить.Предварительный просмотр слияния великолепен, но он никогда не завершит слияние или займет слишком много времени.Большую часть времени я завершаю слияние через командную строку без каких-либо проблем.

Другие советы

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

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

Одна вещь, которую я действительно хочу прокомментировать, - это представление о том, что каким-то образом Subversive является "официальным плагином Eclipse".Это просто неправда, поскольку такого обозначения не существует.Eclipse - это фонд с открытым исходным кодом и любой проект, который хочет следовать их правилам, процессам, требованиям к IP и т.д.могут разместить свой проект совместно с фондом.Это не делает вас более или менее официальным, чем любой другой плагин.

Я также отмечу, что Subversive с момента своего создания находился в стадии "Инкубации", и мне не кажется, что он когда-либо будет соответствовать требованиям для получения диплома.Как вы можете видеть здесь, в проекте был только один коммиттер, и активность коммитов сократилась до очень низкого уровня.

Subversive - Поставщик команды SVN

Так почему же вы должны использовать Subclipse?Мы активно занимаемся самой Subversion.Я являюсь членом Subversion PMC и помогаю поддерживать привязки языка Java, чтобы мы (и другие проекты, такие как Subversive) могли использовать API.

Мы работаем напрямую с Subversion, чтобы определить и улучшить API и убедиться, что необходимые функции доступны таким клиентам, как Subclipse.Мы также тесно сотрудничаем с Visual Studio integration (Анксвн) и команды TortoiseSVN, чтобы убедиться в том, что между клиентами существует относительно согласованный пользовательский опыт.

Subclipse по-прежнему активно поддерживается, и мы поддерживаем Eclipse версий 3.2- 4.2.Мы всегда стараемся прислушиваться к отзывам и внедрять идеи сообщества.Последние версии 1.8.x включают внутренние изменения, которые значительно повышают производительность Eclipse при работе с большими проектами (именно тогда вы действительно это видите).

Subclipse лидирует в таких областях, как поддержка отслеживания слияний, где мы тесно сотрудничали с командой Subversion, сначала добавив эту функцию в 1.5, а затем развивая ее в последующих выпусках.Мы часто были первыми потребителями нового API и предоставляли проекту обратную связь, необходимую для улучшения функции.Пару лет назад мы также представили функцию графической ревизии graph, став первыми, кто предоставил пользователям Eclipse эту давно востребованную функцию.

Если в Subversive есть конкретные функции пользовательского интерфейса, которые люди хотели бы видеть реализованными в Subclipse, я бы посоветовал вам посетить наше сообщество и принять участие в наших дискуссионных форумах.Возможно, другие пользователи разделяют ваши взгляды, и мы вместе сможем улучшить пользовательский интерфейс.

Форум [Подраздел-пользователи].

Eclipse 4.2 является последней версией на момент написания этого поста, но можно с уверенностью предположить, что Subclipse будет поддерживать все будущие версии Eclipse по мере их создания.

С каждой новой версией Eclipse я устанавливаю Subversive, потому что это стандарт, предоставляемый Eclipse.И каждый раз у него возникают проблемы с распознаванием моих уже существующих проектов.

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

Прочитав этот пост, я перешел на подраздел hands down.
http://eclipsezone.com/eclipse/forums/t77149.rhtml#92035407

Если вы много занимаетесь слиянием с Subversion, то, вероятно, предпочтете CollabNet Desktop - Eclipse Edition.Для загрузки вам необходимо зарегистрировать учетную запись в CollabNet, но это бесплатно.По сути, это подкласс с улучшенным интерфейсом слияния.

Я не связан с CollabNet.

CollabNet сделала свой улучшенный клиент слияния доступным для незарегистрированных пользователей Subclipse.Вы получаете это, выбрав функцию CollabNet Merge Client при установке Subclipse с сайта обновления.

Я бы сказал, Subclipse, поскольку я даже не смог заставить Subversive работать ;)

На самом деле я думаю, что они оба в некотором роде отстой.Используя TortoiseSVN на мой взгляд, это гораздо лучшее решение.Он намного надежнее и, как правило, просто работает лучше, и у меня всегда были проблемы с интеграцией с Subclipse и Subversive.

У них обоих довольно отвратительные бородавки, но я не смог заставить Subversive работать с проектом, который я проверил из командной строки, и это стало для меня пробкой.

Я попробовал их оба, и как Subclipse, так и Subversive ужасны.И то, и другое довольно сложно установить.Если вы используете Subversive, вы не удается использовать внешний SVN-клиент.

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

У меня есть Подклип установлен, но используется TortoiseSVN чтобы на самом деле выполнять объединение / пометку / ветвление / слияние.

Подраздел, потому что, по крайней мере, это работает.

Subversive до сих пор был для меня сплошным провалом.Это не очень хорошо сочеталось бы со всеми моими старыми проектами, которые я проверял с помощью Subclipse.

Конечно, у обоих IDE-плагинов есть свои проблемы.Но ни то, ни другое не исключает параллельного использования других решений, таких как TortoiseSVN или command-line.Я использую все три для своих проектов на работе.

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

Другая проблема, которую мы обнаружили, заключается в том, что ваше клиентское программное обеспечение использует формат файла SVN, отличный от формата сервера.(Под форматом файла я подразумеваю способ представления всей информации во всех этих, казалось бы, невидимых файлах .svn, которые эффективно записывают то, что SVN нужно знать о файлах вашего проекта.) Это может привести к хаосу.Есть документированная ошибка между 1.5 сервером и 1.6 клиентами, но я не могу найти ссылку прямо сейчас.

У нас возникли проблемы с запуском плагина superior (IMO) Subclipse 1.6 из-за несовместимости с нашим сервером SVN 1.5.5.Итак, мы вернулись к Подрывной деятельности.Это работает нормально, хотя и медленно и несколько глючно (но улучшается).Однако мы переключимся на Subclipse, когда наш сервер будет обновлен.И да, мы проверяем наши проекты с помощью TortoiseSVN и импортируем их в Eclipse (это быстрее).

Мы обнаружили, что, как говорилось в других постерах, это НЕ сработало бы, если бы мы запускали более новые версии TortoiseSVN, которые записывали файлы в формате 1.6.x, но когда мы вернулись к TortoiseSVN 1.5.x, это сработало бы просто отлично.То же самое было верно и для клиента командной строки (который мы используем с помощью нашего Муравей задачи).

Я решил использовать Subclipse, поскольку он наиболее тесно связан с проектом Subversion и, следовательно, с большей вероятностью лучше справится с основной функциональностью SVN.Если он вообще не сможет выполнить какую-либо функцию, то у меня есть TortoiseSVN в качестве резервной копии.

Просто обновление.Недавно я переустанавливал Eclipse и столкнулся с выбором Subclipse против Subversive.У меня тоже была своя доля проблем, когда я пытался заставить Subversive работать, поэтому я выбрал Subclipse.

Он отлично установлен на моем 64-разрядном компьютере с Linux и работает просто отлично.Я сопоставил наиболее распространенные функции, такие как Update, Commit, ..переходите на короткие пути, и это потрясающе.Слияние тоже хорошее, хотя для более крупных слияний я все равно обращаюсь к TortoiseSVN.Я пробовал это как с 3.5, так и с 3.6, и они оба работают нормально.В итоге я использовал 3.5, потому что по какой-то причине привязка ключей не работала с 3.6.

Если вы используете svn+ ssh в качестве протокола доступа к вашему репозиторию я настоятельно рекомендую вам выбрать Subclipse:Subversive недостаточно умен, чтобы правильно запомнить ваши учетные данные, и запрашивает у вас имя пользователя и закрытый ключ каждый раз, когда вы обновляете свою рабочую копию, а также для каждого svn-внешнего, который вы, возможно, настроили.

Опция "запомнить учетные данные" в этом контексте не работает с момента первого публичного выпуска Subversive.

Если вы используете один из них в своей компании и, возможно, даже захотите объединить их в собственные продукты на базе Eclipse, ваша жизнь намного упростится с Subclipse, поскольку он доступен по общедоступной лицензии Eclipse для бизнеса.

С другой стороны, Subversive нуждается в так называемых коннекторах для полноценной работы.И у них есть отдельные и непохожие лицензии.Таким образом, вы можете получить две или три разные лицензии только для подрывной функциональности, в то время как все остальные Плагины Eclipse находятся как раз под этим EPL.Это также причина, по которой эти соединители не размещены по адресу eclipse.org.

И именно поэтому они загружаются динамически после установки Subversive (что также означает, что простое зеркальное отображение сайта обновлений eclipse.org не дает вам возможности автономной установки Subversive в сети вашей компании).

Примерно до мая 2008 года я использовал Subclipse, но из-за проблем с некоторыми проектами я переключился на Subversive и использую его без проблем.Если вы делаете что-то необычное, например, без головы Бакминстер строит, тогда Subversive, безусловно, тот, с кем нужно работать.

Если вы используете TortoiseSVN и регулярно обновляете версию, вы можете обнаружить, что Eclipse с Subversive теряет всю информацию SVN и выдает несколько страшных ошибок.

Причина в том, что новая версия TortoiseSVN добавляет новые метаданные, которые Eclipse Subversive не понимает, если вы также не поддерживаете свои Eclipse SVN connectors в актуальном состоянии.

Обычно я использую разъем SVNKit, поэтому TortoiseSVN 1.5.x будет работать с Eclipse SVNKit connector 1.5.x, а TortoiseSVN 1.6.x будет работать с Eclipse SVNKit connector 1.6.x .

Подрывной имеет больше преимуществ, чем Подклип как указано ниже.Но только одна функция, которой нет в Subversion, настолько критична при использовании ветвей.Поэтому мы должны использовать Подклип.

Подрывной преимущества:

  • Вид и иконки стали более информативными
  • После обновления элементов синхронизации фиксации зафиксированный файл закрывается.

Подклип преимущество

  • возможность сравнивать две ветви

+1 Подраздел
-1 Подрывной

Subversive запутывается даже после незначительного рефакторинга и имеет проблемы с проверкой, как указано выше.

Окружающая среда: STS 2.7.2 (на основе Galileo)

Для меня ни то, ни другое не лучше и не хуже, но Subversive является плагином SVN по умолчанию в платформе Eclipse Ganymede, так что есть шанс, что он лучше интегрирован с Eclipse.

В дополнение к ответу Брендона:

Мы используем Subversion начиная с версии 1.5.1 и сначала использовали Subclipse.Но поскольку мы сильно зависим от функции объединения, мы переключились на Subversive, который более удобен и имеет отдельную опцию Реинтеграции в диалоговом окне объединения.

Одна из ошибок, которая может помешать объединению, заключается в том, что при явном выборе ревизий не используется последняя из перечисленных ревизий.Например."101-100" не объединяет r100, а "100", таким образом, вообще ничего не объединяет.(версия 0.7.5)

И он использует те же индикаторы, что и плагин CVS.

Хотя я получил и то, и другое, работая с Helios, я немного предпочитаю Subclipse из-за его отличной поддержки bugtraq свойства (подробности здесь).

Тот Самый История вид показывает отдельный столбец (под названием bugtraq:label, отображающий BUGIDs), а в контекстном меню есть специальное действие для "Открытия URL-адреса ошибки" (ссылка на bugtraq:url) - Я не мог понять, как получить доступ к любой из этих данных с помощью Subversive.

Я использую Subversive с тех пор, как перешел на Ganymede.Я использую его с Eclipse в Linux (Ubuntu и Fedora Core), Windows XP и Mac OS X.5.Помимо некоторых проблем с получением Subversion 1.5.1 для использования нужных библиотек безопасности под Mac OS, у меня не было никаких проблем.Учитывая, что он был принят в качестве технологического проекта Eclipse, я склонен делать на него ставку с точки зрения долгосрочных надежд.

На самом деле я им не пользовался, но, похоже, Subversive поддерживает ".Проверьте, Как", точно так же, как это делает встроенная поддержка CVS.

Например, чтобы взять проект из SVN и иметь возможность запускать его как веб-проект, можно было бы сделать это за один раз.Но чтобы получить тот же результат в Subclipse, я просто проверяю исходники и запускаю:

mvn eclipse:eclipse -Dwtpversion=2.0

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

Подкласс имеет тенденцию со временем дезорганизовываться.Если Eclipse не обновляется регулярно, Subclipse, похоже, теряет информацию об отслеживании файлов.Честно говоря, хотя, поскольку у меня есть Простой Плагин для Проводника, я использую Subversive (иногда) для истории и информации об изменениях, но я легко изучаю и использую TortoiseSVN для коммитов и обновлений проектов, которые, как я знаю, я недавно изменил.

Я только что обнаружил, что не могу понять, как просмотреть разницу свойств с помощью Subclipse.В Subversive вы выбираете две ревизии в представлении истории, щелкаете правой кнопкой мыши и выбираете сравнить свойства во всплывающем окне.Этого достаточно для меня, чтобы придерживаться Subversive.

Причиной попытки переключения стало странное поведение Subversive в OS X:Некоторая автоматическая операция под названием "обновление кэша svn" загружала процессор на ненормальный уровень после каждого запуска "обновления svn", что всегда занимало раздражающе много времени.

FWIW, мы используем древнюю версию SVN server (1.4 что-то вроде), и я, кажется, помню, что в какой-то момент было обновление Subclipse, которое нарушило обратную совместимость, и суть была в том, что "в любом случае никто не должен быть на такой старой версии SVN".

Subversive был единственным, который, казалось, был способен справиться со старой версией.Но, к сожалению, я не могу вспомнить подробностей.

Мы попробовали и то, и другое в нашей команде.

Поскольку у Subclipse (того, что от Galileo / Helios) возникли некоторые проблемы с аутентификацией нашего SVN-сервера через VAS, у нас не было проблем в других местах, т.е.Клиент TortoiseSVN, браузеры (кроме Internet Explorer 7).

Итак, мы установили Subversive и проблема была решена.

Преимущество Subclipse перед Subversive...ЭТО ДЕЙСТВИТЕЛЬНО РАБОТАЕТ!

Я использовал Subclipse давным-давно при разработке плагина для совместной работы для Eclipse, который зависел от Subclipse.Вложенная часть плагина никогда не была проблемой, хотя вся Муравей это все еще немного смущает меня, но хорошая часть в том, что вам не нужно понимать, как работает муравьиная часть, чтобы знать, как ее использовать.

Сегодня я пытаюсь установить PDT (это совершенно другой блог), а затем Subversive, потому что, как и многие другие, он изображается как "Плагин Eclipse SVN".Я не смог установить четыре соединителя одновременно, поэтому мне пришлось устанавливать их по одному, и я попробовал их по одному, но по одному не удалось пройти аутентификацию на SVN-сервере.

Я пробую PDT и Subversive, потому что хочу СЭКОНОМИТЬ время, не тратя его больше на различные проблемы с плагином.

Я удалил Subversive, установил Subclipse и подключился просто так.

Сэкономьте себе время и нервотрепку, перейдите к разделу с самого начала.

Я также использовал и то, и другое.У меня была проблема с тем, что у меня на рабочем пространстве около 150 проектов, и Subversive занимал ужасно много времени, когда я выбирал все плагины и говорил "синхронизировать репозиторий".Пользовательский интерфейс зависнет на очень долгое время.Я нахожу, что Subclipse более стабилен.

Во всяком случае, я часто комбинирую эти инструменты.Для некоторых задач, таких как проверка целых ветвей, я предпочитаю командную строку.Для других я использую TortoiseSVN.Я использую Subclipse в основном для просмотра истории и выполнения сравнений непосредственно в инструменте, а иногда и для сравнения (я предпочитаю Вне всякого сравнения хотя бы за это).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top