(no subject)
Dec. 12th, 2009 06:50Новость: «Проект Fedora переходит с системы управления версиями CVS на Git».
Первая мысль: «ОЙ»!
Вторая: «Что это было»?
В общем, внезапно. Как сказали бы /b/тарды — «редхат доставил».
Может, им просто в связи с мировым экономическим кризисом CVS отключили за неуплату?
Для упрощения миграции на Git планируется подготовить комплекс мер, призванных упростить переход на Git привыкших к CVS разработчиков
привыкших к CVS разработчиков
привыкших к CVS разработчиков
привыкших к CVS разработчиков

Первая мысль: «ОЙ»!
Вторая: «Что это было»?
В общем, внезапно. Как сказали бы /b/тарды — «редхат доставил».
Может, им просто в связи с мировым экономическим кризисом CVS отключили за неуплату?
Для упрощения миграции на Git планируется подготовить комплекс мер, призванных упростить переход на Git привыкших к CVS разработчиков
привыкших к CVS разработчиков
привыкших к CVS разработчиков
привыкших к CVS разработчиков

no subject
Date: 2009-12-12 07:30 (UTC)no subject
Date: 2009-12-12 15:28 (UTC)no subject
Date: 2009-12-12 16:05 (UTC)Это как здоровому человеку ходить на костылях, а потом вдруг начать ходить, бегать, и ездить на велосипеде и автобусе.
no subject
Date: 2009-12-12 16:15 (UTC)а гит осилил за 2 часа и теперь юзаю по поводу и без повода везде, даже для /etc или для /var/www
no subject
Date: 2009-12-12 09:19 (UTC)no subject
Date: 2009-12-12 14:41 (UTC)no subject
Date: 2009-12-12 16:00 (UTC)Но год и два назад я довольно глубоко рыл на эту тему. И множество людей в сети тоже делали тесты. И результат был совершенно одинаков и однозначен: «Git» и «Mercurial» — лидеры по скорости и функциональности, и не отстают по другим наворотам. «Bazaar» при прочих похожих отставал по производительности в несколько раз.
no subject
Date: 2009-12-13 01:01 (UTC)Главное — это потенциал, и у Bazaar'а он весьма велик благодаря модульной архитектуре. Все настраиваемо, от алгоритмов слияния (merge) до форматов хранения репозитария. Мало того, с помощью соответствующих модулей Bazaar умеет работать с ветвями из других систем управления версиями (Subversion, Git).
По workflow и набору базовых команд Bazaar очень удобен и привычен тем, кто до этого использовал CVS или Subversion, но при этом является полностью распределенным.
По скорости Bazaar, написанный на Python'е, конечно, уступает написанному на низкоуровневом C Git'у.
Но во-первых, не надо быть быстрее, достаточно иметь приемлемую скорость. Для меня совершенно не важно, будет ли commit длиться секунду или пять секунд. Все равно писать коментарий к этому commit'у я буду дольше. А если я делаю push или pull по сети, то тормозить будет из-за пропускной способности канала, а не из-за скорости обработки поступающих данных.
Во-вторых, скорость растет со скоростью компов, и что страшно тормозило 3 года назад, сейчас просто летает.
А в-третьих, скоро Python станет компилируемым языком благодаря проекту Unladen Swallow, так что все проги, написанные на Python'е резко ускорятся.
К Git'у у меня следующие претензии.
Во-первых, Git написан слишком низкоуровнево, переносимость в нем изначально заложена не была. Поэтому нормально работающего стабильного порта под Windows нет. Я не понимаю, как проекты, у которых Windows является одной из официально поддерживаемых платформ (например, Qt и KDE), могут вообще переходить на Git.
Во-вторых, качество кода и стиль написания Git'а оставляют желать лучшего. Достаточно сказать, что начальный автор и архитектор у него тот же, что и у ядра Linux'а. Поэтому никакой модульности и стабильного внутреннего API нет в принципе. Например, если вдруг выяснится, что имеющийся формат хранения репозитария имеет какой-то фатальный недостаток, то поменять его будет очень сложно.
В-третьих, Git не предоставляет возможность скачать себе только небольшое поддерево проекта и работать с ним. Можно работать с деревом целиком. Как при этом работать с проектом, который развивается как единое целое, но логически состоит из почти независимых подпроектов, совершенно непонятно.
В-четвертых, Git имеет совершенно неочевидный workflow и непривычную терминологию и систему команд. Если, конечно, учить Git как первую систему управления версиями, то это, может быть, и не вызовет трудностей. Но для большинства программистов, которые уже имеют опыт с другими системами управления версиями, переход на Git требует большего переучивания, чем переход на Bazaar.
no subject
Date: 2009-12-13 23:21 (UTC)no subject
Date: 2009-12-12 16:07 (UTC)