Найти в Дзене

Система контроля версий GIT

Оглавление

Git (произносится «гит») — распределённая система управления версиями. Проект был создан Линусом Торвальдсом для управления разработкой ядра Linux, первая версия выпущена 7 апреля 2005 года. На сегодняшний день его поддерживает Джунио Хамано.

Линус Торвальдс
Линус Торвальдс
Джунио Хамано
Джунио Хамано

Среди проектов, использующих Git — ядро Linux, Swift, Android, Drupal, Cairo, GNU Core Utilities, Mesa, Wine, Chromium, Compiz Fusion, FlightGear, jQuery, PHP, NASM, MediaWiki, DokuWiki, Qt, ряд дистрибутивов Linux.

Программа является свободной и выпущена под лицензией GNU GPL версии 2. По умолчанию используется TCP порт 9418. (Википедия)

Как и многие вещи в жизни, Git начинался с капелькой творческого хаоса и бурных споров.

-3

История создания

Ядро Linux — это достаточно большой проект с открытым исходным кодом. Большую часть времени разработки ядра Linux (1991–2002 гг.) изменения передавались между разработчиками в виде патчей и архивов. В 2002 году проект ядра Linux начал использовать проприетарную децентрализованную СКВ BitKeeper.

В 2005 году отношения между сообществом разработчиков ядра Linux и коммерческой компанией, которая разрабатывала BitKeeper, прекратились, и бесплатное использование утилиты стало невозможным. Это сподвигло сообщество разработчиков ядра Linux (а в частности Линуса Торвальдса — создателя Linux) разработать свою собственную утилиту, учитывая уроки, полученные при работе с BitKeeper. Некоторыми целями, которые преследовала новая система, были:

  • Скорость
  • Простая архитектура
  • Хорошая поддержка нелинейной разработки (тысячи параллельных веток)
  • Полная децентрализация
  • Возможность эффективного управления большими проектами, такими как ядро Linux (скорость работы и разумное использование дискового пространства)

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

Первую версию Git представили 7 апреля 2005 года. Базовый релиз собрали за пять дней, а 16 июня 2005 года разработку Linux полностью перевели на Git. Самый свежий релиз на сегодняшний день – 2.26.0, который вышел 22 марта 2020 года.

Команду поддержки Git сегодня возглавляет Джунио Хамано. Собственно, Торвальдс снял с себя обязанности ведущего разработчика проекта 25 июля 2005 года, меньше чем через три месяца после первого релиза Git.

Git используют лидеры ИТ-рынка. Систему контроля версий по-прежнему используют для разработки ядра Linux и ряда дистрибутивов этой ОС, а также Android, Swift, Drupal, Chromium, jQuery, PHP, MediaWiki, Qt и др.

Доля Git  среди других систем контроля версий постоянно растет:

  • в 2010 году на Git работало 11,3% репозиториев против 60,8% у SVN (Subversion);
  • в 2017-м доли сравнялись;
  • на текущий момент на Git построено 71% всех репозиториев кода, и он продолжает захватывать позиции.
«Линия времени» Git.
«Линия времени» Git.

Интересный факт: git в переводе с английского означает «мерзавец». Торвальдс саркастически признался что считает себя тем еще эгоистом, поэтому называет проекты в свою честь: сначала Linux, потом Git.

Преимущества и недостатки

Главное преимущество Git – в том, что он очень быстрый и прозрачный. Он удобен для нелинейной разработки и эффективен как для небольших проектов, так и для огромных систем с тысячами участников.

В отличие от Perforce, CVS и других, Git хранит снимки репозиториев, а не списки изменений в файлах, и за счет этого работает гораздо быстрее. К тому же Git – распределенная система. Если сервер с удаленным репозиторием выйдет из строя, вы можете восстановить код из локальной копии. Если ваша локальная копия пострадает, сможете загрузить код с сервера за несколько минут.

Недостатком «чистого» Git считают отсутствие средств проверки подлинности и аутентификации пользователей. Фактически каждый пользователь, который получает копию репозитория, может делать с ней все, что угодно.