Вопрос

Я спросил пару коллег о Анксвн и ни один из них не был доволен этим.Один из них зашел так далеко, что сказал, что AnkhSVN несколько раз перепутал свой devenv.

Каков ваш опыт работы с AnkhSVN?Я действительно скучаю по интегрированному в IDE инструменту управления версиями.

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

Решение

Старый AnkhSVN (до версии 2.0) был очень дерьмовым, и я использовал его только для блестящих значков в обозревателе решений.Я полагался на Tortoise во всем, кроме ревертов.

Новый Ankh полностью переписан (теперь он использует API управления версиями IDE) и выглядит и работает намного лучше.Тем не менее, я не заставлял его поднимать какие-либо тяжести.Значков для меня достаточно.

Единственное, что меня настораживает в отношении 2.0, - это тот факт, что он ограничивает свою площадь до .sln Файлы.Я всегда возвращаю их обратно, чтобы они не вызвали проблем у коллег, у которых не установлен Ankh.Не знаю, беспочвенны ли мои страхи или нет.


добавление:

Последние несколько недель я использую версию v2.1.7141 немного шире, и вот новые вещи, которые я должен добавить:

  • Никаких уродливых сбоев, которые досаждали версии v1.x.Ура!
  • По какой-то причине окна "Показать изменения" (diff) ограничены только двумя.Мэх.
  • Окна различий пока не разрешают редактирование / возврат.Бу!
  • Обновления, коммиты и просмотр веб-страниц выполняются намного быстрее, чем в Tortoise.Ура!

В общем, я бы не стал использовать его отдельно, но как только вы начинаете им пользоваться, он становится почти незаменимым компаньоном Tortoise.

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

У меня всегда были проблемы со стабильностью работы с AnkhSVN.Я не мог бы переключить всех на Subversion, где я работаю, без интегрированного решения.

Слава богу, что VisualSVN + TortoiseSVN.

VisualSVN не бесплатен, но он дешевый и работает с удовольствием.

@pilif:AnkhSVN поддерживает состояние рабочей копии в памяти, которое аннулируется / обновляется событиями Visual Studio (т. Е. вы редактируете / изменяете файл) и событиями AnkhSVN (т. Е. вы фиксируете / обновляете / отменяете / и т.д.)

Всякий раз, когда рабочая копия изменяется извне Visual Studio (путем редактирования с помощью другого инструмента или с помощью другого клиента Subversion), вам нужно будет обновить AnkhSVN с помощью предоставляемой нами команды Refresh.

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

Я попробовал версию 1, и она оказалась, мягко говоря, ненадежной.Я ничего не могу сказать о 2.0.

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

Копирование / вставка частей моего собственный Пост В Блоге, когда я переключился с Ankh на VisualSVN:

Почему я переключился?Потому что я был немного недоволен общей стабильностью Ankh, поскольку у него есть некоторые проблемы с фактическим отслеживанием изменений решения.VisualSVN - это “просто” интерфейс TortoiseSVN, что означает, что он оставляет всю “тяжелую работу” стороннему инструменту, который а) в любом случае установлен на большинстве рабочих станций и б) который был протестирован и используется такой широкой аудиторией, что он действительно надежен как скала.

AnkhSVN, безусловно, неплохой продукт, и люди, стоящие за ним, серьезно относятся к тому, что они делают, но наличие давно удаленных файлов в моем SVN или получение сообщения “Пожалуйста, очистите ваше решение” раздражает через некоторое время, но моя самая большая проблема - это окно свойств.Приятно, что есть красивое окно с переключателями, спрашивающее меня, какое свойство я хочу добавить.К сожалению, вручную ввести свойство невозможно.

Редактировать: Это было для AnkhSVN 1.x.Тем временем он был обновлен до версии 2.x и многое улучшилось.Я использую его в рабочей среде в системе, где у меня нет VisualSVN, и сейчас он работает очень хорошо.

У меня не было проблем с версией v1, но меня предупредили, чтобы я не использовал ее.Я использую v2 уже некоторое время, и у меня не было с ним никаких проблем.Однако я до сих пор храню резервную копию репозитория...

Я начал с AnkhSVN, а затем перешел к VisualSVN.У меня есть свои проблемы с VisualSVN, но с ним гораздо меньше проблем по сравнению с Ankh.Мне еще предстоит попробовать новую версию Ankh, которая, по их словам, является полностью переписанной и в которой также участвовали разработчики Microsoft.

Я использую как новейшую версию Ankh SVN, так и Tortoise в домашнем проекте.Я нахожу, что они оба очень хороши, с одной оговоркой.

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

Я попробовал AnkhSVN (1.0.3, всего 4 месяца назад), и это сработало не так, как я хотел (т.е.нужно было выбирать что-то в окне браузера, а не на основе активного файла).В итоге я создал несколько макросов, использующих TortoiseSVN, которые работают гораздо больше, чем я ожидал.

Я был очень доволен использованием TortoiseSVN через explorer и моими макросами внутри IDE.

Ранее (как и 2 года назад, когда я пытался в последний раз), AnkhSVN и Tortoise, используемые параллельно с одной и той же рабочей копией, вызывали какое-то повреждение рабочей копии, когда Ankh и Tortoise каким-то образом теряли отслеживание состояния, в котором другой инструмент оставил рабочую копию.

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

Проблемы проявились в том, что Ankh (или Tortoise) настаивал на наличии файлов, которых не было, на изменяемых файлах, которых не было, и на файлах, которые не изменялись, которые были (и, следовательно, не могли быть зафиксированы).

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

Около года назад мы с приятелем использовали AnkhSVN для одного проекта...несколькими коммитами позже, при перемещении пространств имен, это привело к сбою в репозитории SVN.Сломался, например, последний коммит, который мы сделали, был поврежден, и мы больше не могли совершать коммиты.

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

Я очень надеюсь, что теперь они все-таки исправили AnkhSVN, потому что интеграция IDE всегда потрясающая...когда они работают.

@mcintyre321

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

Операция перемещения или переименования приводит к удалению и "добавлению с историей" на уровне subversion.

TortoiseSVN показывает это следующим образом:

originalFile   deleted
newFile        added (+)
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top