Мне нравится hg, даже больше, чем git, который ведёт себя в нестандартных ситуациях немного странноватисто. Собственно, если пересаживаешься с svn на git, то его туповатость и осторожность в моменте merge немного высаживает, хочется просто закоммитить и продолжить работать и в этот момент git начиет пускать слюни, плакать как дитя малое - видишь ли пока ты работал ещё несколько коммитов в целевую ветку произошло, hg на таких моментах максимально дружелюбен, самостоятельно мержит не задавая глупых вопросов.

Можно пользоваться TortoiseHG, например, для красивых рюшечек и бесполезных gui, а можно просто скачать hg и не парить себе мозг всякой ерундой. Через консоль коммитить вполне возможно, главное соблюдать кодировку :)

По-умолчанию дистрибутив hg содержит в себе минимум компонентов: стрипнутый питон, да сам mercurial и ничего лишнего, даже bash отсутствует. За такой минимализм приходится платить функциональностью: из коробки работает только http(s)-транспорт. А вот я ленивый человек, я хочу по ssh коммитить, чтобы лишний раз не вводить пароль.

Вобщем нам надо в файлик %USERPROFILE%\Mercurial.ini добавить

[ui]
ssh="C:\Program Files\PuTTY\plink.exe" -ssh -i "C:\Users\Наш_пользователь\Documents\my_key.ppk"

Ну, и, естественно, нужно обзавестись putty, сгенерить ключ и закинуть его публичную часть в репозиторий. Кроме того, необходимо однажды завалиться в репозиторий, чтобы отпечаток серверного ключа остался в реестре Windows, а то plink будет залипать, так как мы не можем в неинтерактивном режиме нажать "y", чтобы занести отпечаток серверного ключа в реестр.

А вот если пользоваться TortoiseHG, то там такой головной боли нет, оно с ssh работает хорошо.

Next Post