2008-11-20 2 views
10

Я всегда блуждал, почему это большое дело с поддержкой контроля версий внутри IDE.Зачем нужен плагин для управления версиями с IDE?

Я всегда предпочитал использовать стандартную версию управления версиями и не использовал интеграцию IDE.

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

Что вы думаете?

+0

У меня было ужасное ужасное впечатление (и до сих пор) с плагином Subclipse для Eclipse. Сделал меня клятвой использовать CVS до тех пор, пока Eclipse изначально не включит поддержку SVN (которой она действительно действительно должна была к настоящему времени). – Uri 2008-11-20 18:28:44

ответ

2

Интеграция IDE с контролем версий и, в частности, управление изменениями программного обеспечения помогает объединить философию IDE и системы управления версиями.

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

Другим может быть отслеживание рабочих элементов и сложных исправлений ошибок.

Также он сохраняет некоторую церемонию и контекст-коммутацию при редактировании файлов.

Продвинутая интеграция может также позволить внедрить концепцию «конфигурации» («branch», «tag», «view») систем управления изменениями в среду IDE.

Интеграция ClearCase, однако, явно не «продвинута».

4

Мне нравится, как IDE реализовать это. Ankh-SVN для Visual Studio не так уж хорош и немного глючит, однако Subeclipse Я нахожу работу чрезвычайно хорошо, когда я использую Eclipse.

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

Вот почему я очень люблю Subversion с черепахой SVN. Я могу использовать интеграцию IDE, когда и где это имеет смысл, иначе, как вы сказали, я могу просто использовать командную строку или, в моем случае, клиент на базе Windows Explorer!

2

Многое из этого - просто предпочтение и уровень комфорта пользователя. Некоторым людям удобно работать с командной строкой. Некоторые предпочитают графический интерфейс.

Я бы не сделал обобщенных предположений о том, что все средства контроля версий внутри IDE плохие или ошибочные, основанные на опыте с определенным плагином, который имел проблемы.

1

Это зависит от вашей IDE и того, как вы работаете с VCS.

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

также, когда кто-то меняет любой код в других формах, он всплывает и сообщает, что он уже обновлен кем-то другим и просит вас обновить текущие файлы в вашем Х.Д.

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

Я нахожу большинство людей, которые любят иметь дело с командной строкой, работающей в основном в коде без GUI IDE, или я могу ошибаться.

1

Практически все мои потребности в подрывной деятельности могут обрабатываться интерфейсом IDE. Гораздо быстрее сделать 2 быстрых клика, чем открыть командную строку, cd в нужном месте, выдать команду и т. Д.

Командная строка имеет свое место, но с текущим обрезкой IDE это место продолжается сокращаться.

5

Интегрированное управление источником также помогает хранить важные файлы только под контролем источника. Например, когда я добавляю новый файл в Visual Studio, плагин (visualSVN) позволит мне легко добавить его, не заставляя меня заходить за пределы моей IDE и запускать команду, чтобы добавить его в репозиторий. С другой стороны, он автоматически игнорирует временные файлы, такие как obj/и bin/Folders.

По существу: интегрированный контроль версий, который на самом деле работает, - отличный способ сохранить хранилище в чистоте и полной.

1

У меня есть шрамы для боя от использования багги реализации интеграции IDE/VCS. Честно говоря, если бы это было не багги, это было бы здорово. Пока есть отличные инструменты, такие как TortoiseSVN, я не вижу необходимости в интеграции IDE/VCS. Я бы предпочел иметь больше инструментов, которые бы выполняли свою работу, а не несколько багги.

0

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

Я также считаю, что это экономит время установки. Вместо того, чтобы устанавливать всевозможные инструменты, разработчик может загрузить IDE, сделать чек, чтобы быть на своем пути. Если каждый разработчик проекта использует одну и ту же среду IDE, они могут помочь друг другу.

«Контрпродуктивный» - большое слово. Если у вас есть серьезные проблемы с CVS/SVN, возможно, раз в месяц, все еще мало для того, чтобы установить сложные клиенты на всех ваших машинах.

2

Почему у вас даже есть IDE? Почему бы просто не сделать все с помощью командной строки? ;)

Ответ заключается в том, что интеграция с IDE «лучше».

My # 1 reason: Вы можете визуально увидеть, был ли извлечен файл или нет, и если вам нужно отредактировать файл, вы можете предпринять действие прямо там, где вы работаете.

Есть больше, но это большой.

0

У меня есть обе системы, где есть интегрированная среда разработки (Microsoft FrontPage против веб-сайта IIS Development с безопасностью на Visual Source на всем веб-контенте), а там, где нет (разработка командной строки java, выпуски Visual Studio Express Editions). Промежуточный случай, который я использую, - jEdit 4.x с интеграцией VSS через подключаемый модуль.

Я думаю, что интегрированный случай ценен по той причине, что он всегда есть - вам не нужно оставлять приложение для взаимодействия с функциями контроля источника, и вам не нужно беспокоиться о том, чтобы запомнить новые файлы и для проверки файлов перед их редактированием. Насколько мне известно, способность иметь гладкий рабочий процесс и свести к минимуму риск оплошностей.Даже когда интеграция с интегрированным IDE менее совершенна (случай jEdit 4.x), я по-прежнему предпочитаю, чтобы он не имел его.

Я также согласен с тем, что наличие интеграции с проводником в Windows, корпус для Tortoise SVN, также является отличной возможностью даже при интеграции IDE. Это обеспечивает удобную работу без необходимости запуска IDE, а также возможность запуска из окна проводника в среду IDE (в зависимости от типа файла) или редактора или сделать или что-то еще во время работы в проводнике Windows.

И да, интерфейсы командной строки остаются ценными, особенно для сценариев шаблонов повторной обработки.

Я работаю во многих контекстах. Наличие низких барьеров и текучесть операций во всех из них следует ценить.

0

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

Если вы ищете более практические причины, одно из них - это то, что IDE могут предложить вам понимание по характеру их графического представления. Например, Eclipse представит измененные файлы и каталоги. С дополнительными плагинами или наборами вы сможете получать информацию в режиме реального времени, как только другой пользователь редактирует один и тот же файл, помогая вам предсказать конфликт слияния до его возникновения. Я не знаком с механизмом, основанным на командной строке.

0

Я использую intellij, интегрированный с cvs, на регулярной основе, и, безусловно, лучшей функцией интеграции управления версиями внутри IDE является линейная индикация того, что добавлено, отредактировано или удалено вместе с легким доступом (мыши наведите указатель мыши/подсказку) на изменения предварительного редактирования.

Все это в исходном коде ненавязчивым способом.

Для гаек и болтов управления версиями (checkin/checkout/update/etc) Я иногда использую IDE и иногда использую командную строку.

0

Причина № 1 для СКМ, интегрированная с IDE, заключается в том, что она упрощает ее использование и устраняет необходимость ПОМНИТЬ, чтобы проверить ситуацию. Благодаря опыту, я видел, что шаги, которые разработчики понимают как посторонние, которые часто охватывают все, кроме написания кода, не выполняются. Создание дополнительных шагов увеличивает вероятность того, что разработчики не будут беспокоиться об этом и будут работать вокруг системы управления исходным кодом

Смежные вопросы