Git – 15 лет: как появилась и чего достигла самая популярная система контроля версий

22.04.2020      32437

7 апреля система контроля версий Git отметила 15-летие. Решение, разработанное легендарным Линусом Торвальдсом, используют миллионы разработчиков по всему миру. Рассказываем, как создавалась система и почему она так популярна.

Что такое Git 

Git – это распределенная система контроля версий, которая позволяет отслеживать историю разработки ПО и совместно работать над сложными проектами из любой точки мира. 

Git – решение с открытым исходным кодом, распространяется под лицензией GNU GPL версии 2.

Торвальдс создавал Git для управления разработкой ядра Linux. Ранее он использовал систему BitKeeper, но из-за конфликта с создателями Торвальдс задумался о запуске собственного продукта с открытым исходным кодом. 

Первую версию 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. Источник: блог GitLab 

 

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

Особенности Git 

В Git снимки состояний системы сохраняются в репозитории кода в виде коммитов. Каждый коммит может принадлежать одной или нескольким веткам. 

Основная ветка обычно носит название master, в ней принято хранить полностью рабочий код. Новую ветку можно создать из любого коммита. Сделанные изменения вместе с ранее разработанным кодом станут еще одной версией программы. Выглядеть это может так:

 

 

Ветки можно объединять (например, чтобы добавить сделанные изменения в основную версию продукта). Есть возможность переноса изменений из одной ветки в другую, обсуждения, создания запросов на изменения в определенной ветке и т.д.

Каждый разработчик может создать для себя локальную копию всей истории разработки и взаимодействовать с ней. Свои изменения он сможет отправить в удалённый репозиторий при наличии соответствующих прав. Другие разработчики получат доступ к этим изменениям, загрузив их с сервера по протоколам SSH или HTTP.

Собственно, ядро Git – это комплект утилит командной строки. Настройки хранятся в конфигурационных файлах, которые можно менять в текстовом редакторе. Также есть графические оболочки для Git под десктопные ОС, а с недавнего времени – и мобильное приложение для популярного хостинга Git-репозиториев GitHub. 

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

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

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

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

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


Автор:
Обозреватель


См. также

Новость GIT Искусственный интеллект ИТ-Новость Языки программирования Программист

GitLab представила собственную нейросеть Code Suggestions, способную генерировать код по запросу на естественном языке. ИИ-помощник поддерживает работу с 13 языками программирования.

10.07.2023    1531    VKuser24342747    0       

1

Новость GIT ИТ-Новость

Вышел релиз ИТ-хостинга для совместной разработки GitLab 15.0. В нем проведена подготовительная работа для перехода на VS Code, а также добавлен расширенный поиск и возможность управлять несколькими итерациями.

01.06.2022    10036    VKuser24342747    2       

4

Новость GIT GitHub Импортозамещение ИТ-Новость

Российские разработчики представили платформу для работы с Git-репозиториями – GitFlic. Это облачный сервис для совместного редактирования кода и контроля версий программных продуктов.

14.12.2021    48932    user1015646    4       

6

Новость GIT ИТ-Новость

Компания GitLab, которая разработала одноименную систему управления git-репозиториями, провела первичное размещение акций (IPO) на бирже Nasdaq. Капитализация разработчика достигла 11 млрд долларов США.

22.10.2021    9751    user1015646    1       

2

Новость GIT GitHub Безопасность ИТ-Новость

GitHub сдержал обещание и перевел всех пользователей на обязательное использование токенов или SSH-ключей. Таким образом сервис намерен защитить своих клиентов от злоумышленников.

17.08.2021    47532    VKuser24342747    0       

2

Новость GIT GitHub Безопасность ИТ-Новость

Пользователи GitHub смогут подтверждать вход в аккаунт при помощи портативных устройств, которые используют протокол FIDO2. Репозиторий предлагает всем разработчикам перейти на такой метод аутентификации.

12.05.2021    28461    VKuser24342747    0       

1

Новость GIT Автоматизация ИТ-Новость

Компания GitLab выпустила новый релиз платформы для работы с Git-репозиториями. В GitLab 13.7 добавили 45 новых функций, в том числе автоматический откат при сбоях и инструмент проверяющих для запросов на слияние.

22.01.2021    18806    user1015646    0       

3

Новость GIT ИТ-Новость

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

19.11.2020    19672    VKuser24342747    0       

2
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
Оставьте свое сообщение