Previous Entry Share Next Entry
2016-01

Про контроль версий

... а точнее, про монолитные репозитории vs много репозиториев

http://gregoryszorc.com/blog/2014/09/09/on-monolithic-repositories/ - вот всё так.

TLDR: Люди уходят, приходят, проекты мержаются, мэпить это на топологию репозиториев - лишняя работа. Ну и операции часто должны (транзакционно) покрывать много репозиториев сразу.

Всё упирается только в контроль доступа к части репозитория (поэтому я сам по факту сейчас использую модель с многими репозами, увы), и в частичное клонирование. Это решаемо.

В итоге Google сидит на Perforce, а Facebook активно допиливает Mercurial, по мере того, как находят в нём новые ограничения :)

Ну и Git, кстати, начал шустро подтягиваться, когда фанаты увидели, что Hg стараниями фейсбука начал выходить из статуса маргинальной DVCS :)

This entry was originally posted at http://wizzard.dreamwidth.org/428016.html. It has comment count unavailable comments. Please comment there using OpenID.

  • 1
develop7 April 6th, 2015
Git, кстати, начал шустро подтягиваться
не замечал. в чём это выражается?
когда фанаты увидели, что Hg стараниями фейсбука начал выходить из статуса маргинальной DVCS :)
fanboy-driven development ;)

soloviewoff April 6th, 2015
Facebook на Меркуриал уже вроде как ну вот почти пересел. Интересный talk по теме, если не видел - https://developers.facebooklive.com/videos/561/big-code-developer-infrastructure-at-facebook-s-scale

soloviewoff April 6th, 2015
Еще: а есть подробности про то, что Git начал шевелиться?

mbr April 6th, 2015
Я сильно ленив, чтобы освоить весь текст на английском, в чем суть?

Лично я поступаю следующим образом - во время разработки пользуюсь множеством репозиториев, к сдаче проекта форкаю все в один.

Anatoly Borodin April 6th, 2015
Репозиториев, или бренчей?

mbr April 6th, 2015
Написано ровно то, что подразумевалось. В чем суть вопросов?

Anatoly Borodin April 6th, 2015
И "форкать в один" нельзя, это противоположная по смыслу операция. Речь идёт о мердже (слиянии)?

nponeccop April 6th, 2015
Я так понимаю, речь о форке проекта, потому что получается две кодобазы (во многих репозах и в одном).

На уровне DVCS это может быть вообще не слияние, а создание нового репоза с 1 комммитом.

max630 April 7th, 2015
Надо сказать, что представление об одном централизованном репозитории в котором лежит всё история компании за 20 лет - оно тоже довольно идеализированно. Если компания жила вообще без системы контоля версий, потом лесколько лет vss, потом ещё несколько лет на каком-то cvsподобное говно, которое не умеет в удалённые файлы - в итоге у неё конечно есть монолитный репозиторий, но то что там лежит назвать историей можно с большой натяжкой.

Так что если не париться и копировать директории с из репы в репу - то будет как минимум не хуже. А если ещё не забывать писать что откуда скопировано - то и вообще замечательно.

unknown_orient April 7th, 2015
Гугл вроде как давно от перфорса отказался.

sorcerer_ April 8th, 2015
У меня есть подозрения, что автор вообще не понимает проблемы.
Так же у меня есть подозрения, что кодобаза какого нибудь свежего Отсосин Крида раз в 5 больше всего кода, когда-либо написанного Фейсбуком.

vgrichina April 8th, 2015
> Так же у меня есть подозрения, что кодобаза какого нибудь свежего Отсосин Крида раз в 5 больше всего кода, когда-либо написанного Фейсбуком.

3д движки не такие уж большие вообще-то. Особо сравнимо с херовой тучей галимой бизнес логики и хаков в которую обычно превращается любой достаточно старый и популярный веб-сервис. Это еще не считая то что 1) там очень много экспериментов и итераций vs игрушка которую разрабатывают один раз и забывают 2) куча инфраструктурной хрени включая форки open-source проектов и собственные БД и даже компилятор.

vgrichina April 8th, 2015
Самое время вспомнить закон Конвея – https://en.wikipedia.org/wiki/Conway's_law

Нет никаких причин предполагать что он не распространяется на системы контроля версия. Так что палево, Google и Facebook – большие монолитные конторы ;)

Монолитный репозиторий Гугла

bik_top April 9th, 2015
> а точнее, про монолитные репозитории vs много репозиториев
> В итоге Google сидит на Perforce

А есть какие-то дополнительные ссылки на предмет факт-чекинга? Автор упомянутой статьи ссылается на пдфку 2011 года на сайте Перфорса, где они публикуют саксес-стори, внезапно, Перфорса.

Выглядит как притягивание за уши просеянных пруфов под заранее сформированную точку зрения.

За последнюю неделю сталкивался с двумя маленькими репозитриями Гугла на Гитхабе — Unity-плагины для рекламы и облачного хранения сейвгемов.

Про Фейсбук не знаю, но тоже недавно скачивал их популярную плюсовую библиотеку Folly с Гитхаба.

Edited at 2015-04-09 11:50 am (UTC)

Re: Монолитный репозиторий Гугла

surmenok April 9th, 2015
Гугл последнее время стал активно пользовать гитхаб, у них больше сотни репозиториев: https://github.com/google
Вот здесь в 2011 году писали что внутри они пользуют Perforce: http://www.quora.com/What-version-control-system-does-Google-use-and-why

  • 1
?

Log in

No account? Create an account