Почему внезапное увеличение числа отправителей Git на графике попконов Debian в 2010-01 году?

86

Почти в каждой статье, которую я прочитал 1, сравнивая Git и Mercurial, кажется, что у Mercurial лучшая UX командной строки, где каждая команда ограничена только одной идеей (в отличие от, скажем git checkout).

Но в какой-то момент Git неожиданно стал очень популярным, и число отправителей Git на графике попконов Debian (см. Рисунок ниже) буквально взорвалось.

Git vs. Mercurial популярность

Источник: Debian

То, что произошло в 2010-01, что вещи внезапно изменились. Похоже, GitHub был основан раньше, чем в 2008 году.

неизвестно.
источник
23
ну в какой-то момент гитхуб ударил точку перегиба и взлетел. Я сомневаюсь, что это был мерзавец сам по себе. Интересно, может ли кто-нибудь связать популярность gits с популярностью githubs?
Дуг Т.
2
На самом деле, из любопытства, что представляет собой «количество подателей»?
Адам Хоулдсворт
6
Вас интересует общая популярность Git или его установка на Debian? Ваши данные предоставляют информацию только об одном дистрибутиве Linux, игнорируя все остальные дистрибутивы Linux, а также операционные системы BSD, Mac и Windows, но вы задаете общий вопрос о расширении использования инструмента. На основании некоторых ответов есть объяснение, специфичное для Debian, но данных недостаточно, чтобы говорить о популярности Git по сравнению с популярностью Mercurial среди всех потенциальных пользователей. Кажется, что вопрос в том виде, в котором он представлен, основан на ошибочных предположениях.
Томас Оуэнс
32
Git буквально взорвался? Git совсем не похож на безопасный инструмент. Спасибо за предупреждение.
Джейсон
4
Хотя, но git используется в большом количестве других пакетов. Посмотрите на разницу между apt-cache rdepends git-core, и apt-cache rdepends mercurial. Возможно, это не имеет ничего общего с git other, тогда он включен, потому что кто-то установил какой-то другой общий пакет. Например, я пользователь etckeeper и ikiwiki, которые оба основаны на git (я думаю, что также возможно использовать Mercurial). Я предлагаю вам занять некоторое время и взглянуть на все различные вещи, которые зависят или рекомендуют git-core.
Зоредаче

Ответы:

48

Пакет «gnuit» (GNU Interactive Tools, файловый браузер / просмотрщик и просмотрщик процессов) назывался git в Debian вплоть до 2009-09-09, а git назывался «git-core».

Следовательно, лучший график для просмотра:

Что показывает, что популярность резко не выросла (возьмите зеленую линию для левой части, пока они не пересекутся, затем возьмите красную линию).

Майкл
источник
17
По-прежнему кажется, что в 2010/2011 годах произошел резкий рост популярности. Он увеличился с 13 тыс. Установок git-core (то есть Git) в 2010-01 г. до более чем 50 тыс. Установок (совокупность пакетов git-core и git) в 2011-01 гг. Это увеличение почти на 40 тыс. Установок за один год - гораздо более резкое увеличение, чем любое другое ежегодное увеличение.
Томас Оуэнс
3
Кто-то в HN отредактировал изображение, и, кажется, @ThomasOwens все еще демонстрирует резкий рост. i.imgur.com/PmYj7.png
Охотник на джунглей
2
Да, он все еще идет от линейного роста к экспоненциальному, что очень важно, даже если это не было так внезапно, как кажется на первый взгляд
Бен Брока
3
@BenBrocka Разве это не происходит от линейного к линейному с более высоким коэффициентом? :) И это, вероятно, в конечном итоге будет логарифмическим.
Креативитея
2
@RussellBorogove: ерунда. Количество биолюминесцентных летающих лам в Джибути растет в геометрической прогрессии, и я ожидаю, что это будет продолжаться вечно.
Механическая улитка
34

Пакет git в Debian ранее назывался git-core. В апреле 2010 года пакет был переименован в git. Более подробную информацию можно найти в этом сообщении в блоге Юлиуса Пленца или в коммите Debian .

Вот график, который показывает количество установок как во времени, так gitи git-coreво времени:

Git-GitCore-Graph

noqqe
источник
1
Было бы неплохо иметь скриншот графика здесь. Если вам нравится, я могу добавить это. :)
Охота на джунгли
1
+1. Этот график лучше всего показывает, что произошло с переименованием пакета.
Джефф Ферланд
26

Я использовал Darcs для своих собственных проектов некоторое время. Я переключился на git во время быстрого восхождения, на которое ссылается ваш график, поэтому вот мое наблюдение:

Распределенные системы контроля источников примерно в то время были самым передовым. Так называемые альфа-программисты использовали их на стороне, но они не попадали в поле зрения большинства профессиональных разработчиков программного обеспечения. С точки зрения CVS / SVN / SourceSafe / TFS на мир программисты в целом были более или менее довольны, и большинство людей полагало, что проблемы, которые породили распределенную систему контроля версий, можно было бы исправить с помощью лучшего инструментария. Так же, как вы получили улучшение, перейдя из CVS -> SVN, что когда-нибудь будет что-то, что позволит вам перейти SVN -> SVN ++. Как еще вы будете управлять исходным кодом?

Затем пришел мерзавец. Что заставило задуматься о том, что у всех есть радар, так это огромный публичный проект, который сразу же принял его. Git получил много пользователей бесплатно - если вы собираетесь серьезно взломать ядро, вы использовали git. Хотя я не могу быть на 100% уверен, я бы поспорил, что на тот момент ни у одной другой DVCS не было такой большой базы пользователей.

Тогда это сработало. Это сработало хорошо. Это хорошо сработало на публике. Кроме того, для начальных бородавок он был более стабильным, чем большинство одновременных DVCS в то время. Например, Даркса можно было привести в противоречивое состояние, для которого требовалось исправить нелепо сложную (квадратичную? Факториальную? Не могу вспомнить точно, но она была плохую ) утилиту. Git всегда был более стабильным.

Из его большой пользовательской базы он просто кровоточил.

Каждый проект, коммерческий или открытый, нуждается в этой критической массе. Даркс не понял этого. Также как и Mercurial. Передумать. Множество небольших проектов используют его. Вероятно, есть даже несколько коммерческих пользователей. Но какова ваша большая история успеха?

«Если это достаточно хорошо для ядра Linux, это достаточно хорошо для вас» - очень убедительный аргумент.

Подводя итог, можно сказать, что это был хороший продукт, который появился в нужное время и получил большую преданную базу пользователей.

Майкл
источник
4
Я думаю, что и git, и hg начались примерно в 2005 году, к 2010 году им было уже 5 лет. Я бы не назвал их мейнстримом, но я не думаю, что кровоточит также правильно.
R0MANARMY
10
как это отвечает на заданный вопрос? «Что случилось в 2010-01, что все внезапно изменилось», как показано на снимке экрана
коммент
2
@gnat Это стадия кровотечения / критической массы, о которой я говорил.
Майкл
4
@ Майкл, как я понимаю, твой ответ не очень подробно описывает это. При всем уважении, то, как оно сформулировано сейчас, больше похоже на дикую догадку, выстрел в темноте. «Тогда, в январе 2010 года, я чувствовал, что это идет, что-то было в воздухе ...» Не очень полезно извините
комнат
1
Проблемы, которые привели к распределенному управлению исходным кодом , были исправлены лучшими инструментами. Сегодняшняя SVN намного лучше, чем летняя версия, которая, как кажется, думают люди из DVCS, все еще актуальна, и она устраняет проблемы, присущие старой модели, не привнося все новые головные боли и дополнительную сложность, которую DVCS вносит в таблицу.
Мейсон Уилер
13

Я был поздним последователем - с 2010 года перешел с Mercurial на Git.

Я считаю, что Git стал настолько популярным, потому что на таких сайтах, как GitHub, у вас был сетевой эффект в инструментах контроля версий. Раньше такого не было, так как вы делитесь кодом на основе проекта или компании.

Я особенно помню, как переключился на Git и Github, потому что все проекты, в которых я был заинтересован и участвовал, делали то же самое, а также разработчиков, с которыми я общаюсь.

Это сетевой эффект.

GitHub был самым популярным сетевым слоем для совместной работы, построенным на DVCS, и Git оказался «достаточно хорошим». Mercurial, конечно, было легче изучать и использовать, у Git много нюансов, но благодаря Линусу у него был солидный бренд.

То, что GitHub был запущен в 2008 году, а рост начался в 10 году, не означает, что GitHub не несет ответственности. Если вы посмотрите на графики конкурентного роста в других областях, таких как социальные сети и рост Facebook, линия очень похожа.

Вы не видите таких графиков роста без эффекта вирусной петли / сети.

Например, сравнить с диаграммой роста Facebook

диаграмма роста facebook

Обновление: я знаю, что приведенный выше источник, возможно, не был точным, но есть много источников данных, которые демонстрируют, что Git рос в геометрической прогрессии за последние несколько лет.

График 1: Упоминания о Git в объявлениях о работе

упоминание о мерзости в объявлениях о работе

И опрос Eclipse, который показывает, что доля рынка Git увеличилась с 13% в 2011 году до 27% в 2012 году . Удивительный рост.

Этот пост дает гораздо лучшее объяснение росту Git и сетевым эффектам, чем то, что я сделал здесь.

nikcub
источник
9
Существует большая разница между экспоненциальным увеличением (как мы видим на графике в Facebook) и исходным графиком, включенным в вопрос. Если верить этому графику, в определенной точке наклона будет существенный разрыв - это будет означать какое-то событие, которое произошло, а не эффект сети. И действительно, из других ответов звучит, что это событие было переименованным пакетом! :)
starwed
Эта схема может быть неправильно, но есть и другие исследования , которые показывают , что рост Git и уже был экспоненциальным. Например, Обзор затмения, о котором говорилось в этом посте (который подчеркивает ту же мысль, что и я, но гораздо лучше): jamesmckay.net/2012/06/…
nikcub
Ссылка на mckay не работает. Вот версия Wayback Machine .
Фахим Митха
5

Просто чтобы прояснить, этот график показывает установку git в системах Debian.

Примерно в то время, когда происходит всплеск, пакет Debian был переименован из git-core в git. Может быть, люди нашли пакет проще теперь, когда название отражает программное обеспечение.

Питер ван дер ли
источник
5

Я удивлен, что никто не упомянул Github как одну из главных причин популярности Git . Они выдвинули git mainstream.

Github запущен в апреле 2008 года, и в течение 1-2 лет они приобрели популярность. И затем, когда вы видите внезапный взрыв использования git / git-core, в первую очередь это связано с 2 миллионами пользователей github и их 3.7 миллионами хранилищ. Github сделал Git простым в использовании. Bitbucket был там, но Github сделал это без усилий. Я уверен, что если бы ребята из github выбрали Hg вместо git, мы бы увидели такой же всплеск использования Hg.

Аналогия может быть: Canonical: Linux :: Github: Git

Джон
источник
Я абсолютно согласен. Github делает управление ревизиями забавным, простым для понимания и таким полезным со всеми этими репозиториями с открытым исходным кодом. Они, по моему мнению, причина, почему Git стал таким большим.
d34n5
1

Ну, IMHO, распределенные VCS, такие как Hg и Git, по своей природе лучше, чем централизованные VCS, поэтому SVN всегда собирался проиграть одному из них.

И git, как уже отмечалось, имел огромное преимущество перед Hg в том, что его использовал крупнейший и самый успешный проект с открытым исходным кодом на планете - это чертовски хороший послужной список с самого начала.

Относительно того, почему внезапный взрыв в начале 2010 года, мое предположение довольно прозаично. Git великолепен, но он не очень интуитивно понятен для новичка.

Лучшая книга о Git, IMHO, это Pro Git, которая была опубликована в сентябре 2009 года. Вторая лучшая (опять же IMHO), книга Git О'Рейли, была опубликована в июне 2009 года.

Таким образом, причина, по которой использование Git взорвалось в начале 2010 года, может быть столь же простой, как тот факт, что именно тогда стали доступны действительно хорошие ресурсы для изучения того, как его использовать.

DJH
источник
1
SVN никогда не был ведущим централизованным VCS, когда речь шла о ветвлении и слиянии. Hg и Git были первыми VCS с открытым исходным кодом, которые хорошо справились с ветвлением и слиянием. Я не думаю, что централизованное / распределенное имеет какое-либо отношение к этому.
Ян
1

Выбор системы контроля версий - это социальное решение. Команде всем нужно использовать одно и то же решение. В отличие от текстового редактора, который является личным решением - разные разработчики могут использовать разные редакторы и легко сотрудничать.

Таким образом , при выборе системы контроля версий существуют сетевые эффекты, в результате чего системы, которые могут быть немного лучше или чуть более популярными, становятся еще более популярными.

Например, я предпочитаю darcs для проектов с открытым исходным кодом, но обнаружил, что больше моих потенциальных участников были знакомы с git, и я с большей готовностью получал больше вкладов для проектов, размещаемых с помощью git вместо darcs. Итак, я больше не использую git вместо darcs. Затем, поскольку я использую его и публикую код на Github, кажется, что я одобряю его или даже предпочитаю, что может повлиять на его использование другими.

Разработчики не хотят изучать новую систему контроля версий для каждого проекта, в который они вносят свой вклад, поэтому всему сообществу выгодно иметь «достаточно хороший» и широко популярный стандарт, а затем каждую команду и проект выбирать «лучших» Решение в вакууме.

Github только подлил масла в огонь сетевого эффекта.

Марк Стосберг
источник
-1

Глядя на исправленный график в ответе Майкла, показывающий как git-core, так и git в системах Debian, возникает вопрос, почему git стал популярным в 2006 году в системах Debian и почему он вырос в геометрической прогрессии в период между 2006-2012 гг.

Причиной может быть активное внедрение дистрибутивов Linux на основе Debian, таких как Ubuntu, который стал популярным в 2005-2006 годах и стал дистрибутивом № 1 вплоть до 2011 года, когда Mint, также основанный на Debian, стал # 1. В конце 2012 года Mint по-прежнему # 1 и Ubuntu # 3 в соответствии с DistroWatch .

GitHub, основанная в 2008 году, предоставляла бесплатный хостинг Git, а в период с 2008 по 2012 год стала первой в мире услугой для хранения репозиториев с ~ 2,5 миллионами пользователей и ~ 4,5 миллионами проектов , согласно Wikipedia в конце 2012 года.

Rails и многие другие проекты перешли с Rubyforge на GitHub в конце 2000-х годов. Кроме того, Bundler был представлен примерно в то время, о котором идет речь (в конце 2009 года), с поддержкой установки / обновления гемов с помощью :gitопции в Gemfile, а Bundler был включен в качестве зависимости от Rails 3. Проекты на Python, Javascript, C, C ++ Java, CSS и т. Д. Также были перенесены на GitHub или запущены на нем.

Те, кто хотел внести свой вклад в проекты на GitHub, должны были раскошелиться на проект в GitHub, использовать локальный клиент git для клонирования репозитория, прежде чем вносить изменения и отправлять их обратно в GitHub и выполнять запрос на извлечение. Это было намного проще, чем другие методы, использовавшиеся ранее, и, вероятно, было значительной причиной того, что он был принят проектами, которые перешли на GitHub или решили начать там. Это означало, что git-core / git необходимо было установить в дистрибутивы на основе Debian, чтобы разработчики могли использовать GitHub.

Поэтому я считаю, что именно сочетание дистрибутивов на основе Debian становится все более популярным и все более популярным среди пользователей git из-за роста числа пользователей и проектов GitHub, что, вероятно, связано с бесплатным хостингом и пользовательским опытом GitHub.

Гэри С. Уивер
источник
-2

Я думаю, что многие люди путают взаимосвязь с причинностью.

Все представленные графики показывают корреляцию между показателями популярности гитлеров и событиями ... и другими показателями. Однако корреляция не является явным доказательством причинно-следственной связи.

Некоторые другие ответы пытаются установить отношения с другими вещами; Например, евангелизация Линуса Торсвальдса для DVCS, образование Github, рост социальных сетей. Хотя есть свидетельства корреляции (на временной шкале) не так сильно, это не исключает причинно-следственной связи. Особенно, если вы принимаете гипотезу «сетевого эффекта»; то есть, что есть несколько причин.

Суть в том, что имеющиеся доказательства не могут показать причинно-следственную связь. Мы говорим о коллективном поведении сотен тысяч людей, и люди принимают решения по разным причинам ... или вообще без логической причины. Программисты ничем не отличаются от других.

Стивен С
источник