metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-08-10 01:38 am

Mercurial

В честь того, что у меня завтра отключают телефон в связи с "заменой телефонной линии", а так же пропаданиями света на сервере svn и отключением маньяками другого сервера, виртуального, вместе со всей вмварью, сижу изучаю сабж.
Сразу могу сказать, что ребе [livejournal.com profile] belnetmon будет несказанно рад тому, что его экспериментальные разработки можно будет коммиттить локально и созерцать их историю, ничего не меняя в основной ветке. Не говоря уже о том, что ему не нужно будет подключаться по GPRS из турции к центральному серверу для коммитов.


PS: Топки холокоста, оно .hg делает только в корне репозитория, это же позитив несравнимый с .svn в каждой папке рабочей копии subversion.

PPS: Как минимум, отключение интернетов мне уже пофиг - я уже две копии проектов одновременно запилил под hg и svn, т.е. смогу пилить в второй копии под hg, затем сделать push в первую и закомиттить в центральный svn по мере возможности.

[identity profile] kiryl.livejournal.com 2009-08-10 08:58 am (UTC)(link)
> У mercurial отличная документация - разобраться с ним занимает ровно 40 минут. Чем крыть будешь?

http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html

> Ссылки на progit не канают, там читать слишком дохуя.

Классный аргумент! "Почитайте мне вслух!"

> Ссылки на progit не канают, там читать слишком дохуя.

Вцелом мне на винду по%#й. А какие там сейчас проблемы с http://code.google.com/p/msysgit/ ?
(deleted comment)

[identity profile] kiryl.livejournal.com 2009-08-10 09:14 am (UTC)(link)
> Не канает

Ну, не занаю. Я когда-то прочитал вот это:
http://git.kernel.org/?p=git/git.git;a=blob;f=README;h=80cc27913e449fbc25f2df1c515abc294ba9afde;hb=a3eb250f996bf5e12376ec88622c4ccaabf20ea8

а затем читал только маны. Всё понятно. До этого DVCS не использовал.

> Да и changelog'и + history просматривать в интерактивной гуйне объективно удобней.

Видимо, я не вписываюсь в вашу объективную реальность. Мне хватает git log. А от hg log у меня мозг ломается.

[identity profile] zamotivator.livejournal.com 2009-08-10 09:17 am (UTC)(link)
а затем читал только маны. Всё понятно. До этого DVCS не использовал.
Люди по-разному воспринимают информацию. Мне наличие картинок облегчает понимание, существенно облегчает.
Иначе как объяснить феномен популярности подкастов?
А видео-туториалов?

Видимо, я не вписываюсь в вашу объективную реальность. Мне хватает git log. А от hg log у меня мозг ломается.
Выводят они одно и тоже, если чо, и мозг ломается от обоих.
Как и от svn log.
Я приводил в пример hg glog.

[identity profile] zamotivator.livejournal.com 2009-08-10 09:19 am (UTC)(link)
* по разному
Дефис лишний...

[identity profile] kiryl.livejournal.com 2009-08-10 09:19 am (UTC)(link)
git'овое раскрашивание лога и вменяемое форматирование спасают мой мозг от повреждений. ;)

[identity profile] zamotivator.livejournal.com 2009-08-10 09:21 am (UTC)(link)
Раскрашивание и у mercurial есть (:

[identity profile] zamotivator.livejournal.com 2009-08-10 09:07 am (UTC)(link)
Не канает. Вот почему git либо портянка (1, 2) либо short tutorial без пояснений?

В идеале должно быть так: 1, 2.

А из портянок вполне есть и The Definitive Guide.

Классный аргумент! "Почитайте мне вслух!"
Не передёргивайте.
Я на git, с чтением всех этих мануалов убил больше трёх десятков часов времени. Понимания не было НИХУЯ.
Пусть я тупой, а вы гений - не буду спорить.
Но работают обычные люди, как я. Потому и победил mercurial - внятной документацией, где спустя 40 минут я уже понимаю ЧТО это и КАК с этим работать.
Вот ВСЁ ОСТАЛЬНОЕ я доберу позже уже по адресным ссылкам.

Вцелом мне на винду по%#й. А какие там сейчас проблемы с http://code.google.com/p/msysgit/ ?
1) Ужасно неудобная настройка внешних утилит merge и diff
2) Дополнения типа git-svn есть лишь в cygwin, а cygwin и msys вместе дерутся
3) TortoiseGit падает, TortoiseHg работает и не жжужит. Не надо говорить "он не нужен", у нас работают в том числе и более обычные чем я, люди, который Gui нужен.
Да и changelog'и + history просматривать в интерактивной гуйне объективно удобней.

[identity profile] kiryl.livejournal.com 2009-08-10 09:14 am (UTC)(link)
Упс. ответил не туда...

[identity profile] zamotivator.livejournal.com 2009-08-10 09:17 am (UTC)(link)
Я тот коммент удалил из-за проблем форматирования.
Можете перенести ваш сюда.

[identity profile] theiced.livejournal.com 2009-08-10 09:17 am (UTC)(link)
кстати - для линупсов есть meld. интеграция с меркуриалом делается вот так:

[extdiff]
cmd.meld=

и потом пейшем hg meld вместо hg diff.

[identity profile] zamotivator.livejournal.com 2009-08-10 09:18 am (UTC)(link)
Да, подключение extension у mercurial делается на раз два три.
А поддержка "искаробки" winmerge, etc - +1000 к карме.

[identity profile] jek-hor.livejournal.com 2009-08-10 10:33 am (UTC)(link)
В git не сложнее. Параметр merge.tool=<"kdiff3"|"tkdiff"|"meld"|"xxdiff"|"emerge"|"vimdiff"|"gvimdiff"|"diffuse"|"ecmerge"|"tortoisemerge"|"opendiff"> или любой другой с указанием командной строки в merge..cmd.

[identity profile] theiced.livejournal.com 2009-08-10 10:58 am (UTC)(link)
а я хочу и hg diff и hg meld - для разных задач - разные тулы. так мона?

[identity profile] theiced.livejournal.com 2009-08-10 12:09 pm (UTC)(link)
вах - неудобно ;]

[identity profile] lastwalrus.livejournal.com 2009-08-10 01:22 pm (UTC)(link)
под винду git svn "из каропки" не работает.

[identity profile] kiryl.livejournal.com 2009-08-10 02:19 pm (UTC)(link)
Только что поставил и сделал git svn clone. Работает. Что я делаю не так?

[identity profile] lastwalrus.livejournal.com 2009-08-10 02:32 pm (UTC)(link)
Не знаю что не так :)
ты какой ставил Git-1.6.4-preview20090730.exe или msysGit-fullinstall-1.6.4-preview20090729.exe ?


[identity profile] kiryl.livejournal.com 2009-08-10 02:33 pm (UTC)(link)
Git-1.6.4-preview20090730.exe

[identity profile] lastwalrus.livejournal.com 2009-08-11 09:58 am (UTC)(link)
Проверил этот под семеркой... всё работает, так что пока беру свои слова обратно.