2009-05-05 2 views
21

A similar question было задано в последнее время, но это не то же самое.Взаимодействие между ртутью и подрывной деятельностью

На сайте Mercurial имеется сравнение detailed page листинга для 4 различных вариантов для взаимодействия Mercurial и Subversion.

Мне интересно, кто-нибудь из вас попробовал один или несколько из них и мог связать любые действительно хорошие или действительно плохие переживания. В записке на hgsubversion download говорит

hgsubversion является расширением для Mercurial, что позволяет использовать Mercurial как клиент Subversion. В настоящее время это не готово для использования в производстве. Вам следует использовать это, только если вы готовы взломать его и отправиться на дайвинг во внутренние устройства Mercurial и/или Subversion.

, который примерно так же приглашает на меня знаки, которые говорят: «Отказайтесь надеяться, все вы, которые входят сюда» или «Нарушители будут арестованы». Поэтому мне просто интересно, стоит ли использовать эту или любую другую альтернативу для тех, у кого нет лишнего времени для взлома.

+4

+1 для лености. Со всеми предупреждениями я не мог заставить себя попробовать любой из вариантов :-) –

+0

Я бы не назвал это «ленивым», я бы назвал его «экономным». Настройка/управление конфигурацией управления источником (предположительно) - это лишь небольшая часть работы с программным обеспечением, которая, в свою очередь, является лишь небольшой частью моей работы. Либо мне, либо мне нужно приставать к нашей ИТ-группе, и они не будут знать, поскольку они обычно работают с программным обеспечением «Реал» (Windows/IIS/SQLServer и т. Д.). Поэтому я должен использовать свое время мудро, когда дело доходит до «маленьких» задач, подобных этому. Когда я ленив по-настоящему, я горжусь этим. :) –

+0

«теперь он не готов к использованию» - это все еще так? – inger

ответ

1

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

Я изначально хотел бы нажать и потянуть сервер Subversion. Поэтому я попробовал вариант 1, hgsubversion. Я на Ubuntu 9.04 (Jaunty) с hg 1.1.2. Я следил за указаниями, приведенными на этой веб-странице. Казалось, все прекрасно. Но когда я попробовал команду hg svnclone, я получил ошибку «неизвестной команды». Дальнейшее копание показало, что теперь вы просто делаете hg clone с URL-адресом SVN с префиксом svn +. например:

hg clone svn+https://server/svn/repo/

Но тогда, я получил сообщение об ошибке:

abort: could not import module encoding!

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

Резюме: вариант 1 в настоящее время не работает для меня. Другие варианты не соответствуют моим желаемым рабочим потокам.

Обновление: я попробовал снова с Mercurial 1.2.1 и получил тот же результат. Кто-то сказал мне, что должна работать ветка в разработке mercurial-crew.

+1

вам нужны последние версии mercurial и hgsubversion. Однако - будьте осторожны с hgsubversion на данный момент. Похоже, много рефакторинга происходит –

+0

Спасибо. Я добавил обновление 1.2.1 и mercurial-crew. –

+0

Да, вам нужен Mercurial 1.3 - модуль кодирования был добавлен после выхода 1.2.1. –

4

Я думаю, что автор hgsubversions немного параноик.Если вы следуете README, то есть используйте подходящие последние версии меркуриальной и подрывной деятельности - , а не, что бы ни было установлено на вашем дистрибутиве или нет, - тогда это действительно работает достаточно хорошо. Аналогично, содержащаяся в документации документа актуальна; в то время как то, что вы найдете в Интернете, может и не быть. Я использую его на пару недель с разумными, но не идеальными результатами.

Это когда вы попадаете в углы двух систем, у вас есть проблемы: hgsubversion и другие расширения (у меня проблемы с hgtasks), похоже, не похожи друг на друга; неясно, как обрабатываются свойства и т. д.

+0

Привет из будущего! Я использую hgsubversion в течение нескольких месяцев ежедневного использования на работе, и это кажется в основном прекрасным. У этого есть некоторые неловкости по сравнению с чистым Mercurial (например, не будучи в состоянии обновить из Svn, когда у меня есть незафиксированные изменения), и он сильно испортил при попытке перефразировать над странным ветвящимся событием в Svn (так что не делайте этого) , но кроме этого, не проблема. –

2

Да, вы должны использовать недавнюю «версию экипажа» Mercurial, см. страницу CrewRepository на вики Mercurial.

Когда Mercurial 1.3 выпущен 1 июля, hgsubversion должен начать поддерживать стабильную ветвь. По крайней мере, это слово в IRC (#hgsubversion на irc.freenode.net).

+0

ooh ahh. Тогда я смотрю на 1 июля. –

+0

dohhwww, похоже, это неверно для hgsubversion; расширение «convert» - это то, что, видимо, было добавлено/выпущено –

+0

. Расширение конверта - это тот, который поставляется с Mercurial (и был отправлен в течение длительного времени). Мне жаль, что hgsubversion еще не выпустила стабильную версию, видимо, они перебрались в большую переписку, чем они думали в то время, когда я ответил на этот вопрос. –

3

Я только начал работать с опцией 4, hgsvn. Несмотря на то, что говорит страница Mercurial, hgsvn 0.1.7 делает поддержку, отталкивающую назад к репозиторию svn.

Мое использование очень просто: я действительно хочу иметь только локальные ветви (на данном этапе). Рабочий процесс, указанный на странице hgsvn, является тем, что я использовал, и до сих пор он ничего не сломал.

3

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

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

+0

Позвольте мне добавить отзыв: В настоящее время я использую mercurial + hgsvn + http://arrenbrecht.ch/mercurial/pbranch/, чтобы внести свой вклад в проекты с открытым исходным кодом. Просто потяните svn repo в mercurial, управляйте своими патчами, используя pbranch. Затем вы сообщаете свои патчи по электронной почте разработчикам проектов. – wires

0

Я использую hgsubversion в течение нескольких месяцев. Возможно, вам не хватает некоторых функций, но они готовы к использованию.

OGRE и многие другие решили использовать hgsubversion, потому что это быстро.

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