воскресенье, 8 января 2012 г.

Пробуждение или как я мигрировал с svn на git

После посещения XPDays я понял, что git это классно и круто. До этого я конечно слышал о нем и даже собирался разобраться с ним в будущем, но после XPDays решил сделать это прямо сейчас и не откладывать в долгий ящик. Начал читать и пытаться понять возможности этой шайтан-системы контроля версий. И тут в процессе я увидел доклад "Пробудись" Анатолия Колесника и Марьяны Трофименко о преимуществе DVCS над VCS и пошел на него. Александр и Марьяна показывали команды на примере Mercurial и окончательно убедили меня в том, что нужно переходить на децентрализованную систему контроля версий, так же фишкой было то, что они предложили (а оказывается там была банда древняя история с этим докладом и связано много людей) 100$ тому, кто в своей повседневной работе перейдет с VCS на DVCS и я, ради интереса и потенциального вознаграждения, согласился.
Я выбрал git. Поставил графический клиент Git Extensions и начал читать книгу Pro Git. Разобрался с идеей DVCS, бренчами, мержами, тэгами выбрав модель ветвления описанную в статье http://habrahabr.ru/blogs/Git/106912/ и потренировавшись на одном проекте, приступил к главному блюду, мигрированию проекта с svn, чтобы получить все плюшки git'a в повседневной работе. В команде мы договорились, что коммитим в svn последний раз, после моего рассказа о плюшках git'a и как он может решить наши проблемы (а они действительно были). Мигрировал я с помощью статьи http://www.jonmaddox.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/.  Потренировавшись на кошках мелких проектах я увидел, что все работает и поставил мигрировать основной проект. После 3-4 часов процесса миграции я залил проект на сервер и начал переводить участников команды на git. Началось прямо парное изучение git и git extensions. Вообщем всем понравилось, наработки по фичам были сразу распиханы по веткам, теперь начинаем потихоньку мержить и радоваться нашему дереву;). В заключении я бы хотел поблагодарить всех, кто мне оказывал помощь и конечно Анатолию, Марьяне и другим людям, которые работали над этим докладом, за пробуждение.