Git — система контроля версий: программа, которая запоминает каждое сохранённое состояние проекта и позволяет вернуться к любому из них. Её создал Линус Торвальдс, автор ядра Linux, в 2005 году, а сейчас развивает сообщество разработчиков. Git бесплатный, с открытым кодом и работает на Windows, macOS и Linux.
Сегодня Git — стандарт для программистов: на нём построены GitHub, GitLab, Bitbucket, российские GitFlic и GitVerse. Но пригодится он не только разработчикам. Им пользуются верстальщики, авторы документации, переводчики и все, кто работает с текстовыми файлами и хочет видеть, кто, когда и что именно поменял. Главное отличие от «копий папки с датой» — Git хранит не файлы целиком, а историю изменений с пояснениями, и её можно сравнивать, объединять и откатывать.
Что умеет Git
- История изменений — каждое сохранение, или коммит, содержит автора, дату и комментарий. Через месяц можно открыть историю и понять, почему поменялась строка и кто это сделал.
- Откат ошибок — если правка сломала сайт или программу, достаточно вернуть файл или весь проект к предыдущему коммиту. Ничего не теряется, пока изменения были закоммичены.
- Ветки — новую функцию можно делать в отдельной ветке, не трогая рабочую версию. Когда всё готово, ветку сливают с основной, а неудачную просто удаляют.
- Распределённость — у каждого участника полная копия проекта с историей. Работать можно без интернета, а синхронизироваться с остальными — когда сеть появится.
- Совместная работа — несколько человек правят один проект одновременно. Git сам объединяет изменения в разных местах файла и показывает конфликт, только если двое поменяли одну и ту же строку.
- Сравнение версий — команда показывает построчную разницу между любыми двумя состояниями проекта: вчерашним и сегодняшним, вашей веткой и основной.
- Отложенные изменения — незаконченную работу можно временно убрать в сторону, переключиться на срочную задачу, а потом вернуть всё как было.
Сам Git — программа для командной строки. В сборку для Windows входят оболочка Git Bash и простой графический интерфейс Git GUI. Для удобной работы мышью есть отдельные программы, например GitHub Desktop, а редакторы кода вроде Visual Studio Code показывают изменения и делают коммиты прямо из своего окна, используя установленный Git.
Кому подходит
- Начинающим программистам: без Git сегодня не обходится ни учебный курс, ни первая работа.
- Тем, кто делает сайты и хочет хранить их код с историей, а выкладывать на хостинг автоматически.
- Авторам документации, книг и статей в Markdown, которым нужна история правок и работа с редактором.
- Командам, где несколько человек правят одни и те же файлы и важно не затирать работу друг друга.
- Администраторам, которые хранят настройки серверов и скрипты и хотят видеть, что и когда менялось.
Плюсы
- Бесплатный, с открытым кодом, без рекламы и регистрации
- Работает без интернета, полная история у каждого участника
- Быстрые ветки и надёжное объединение изменений
- Поддерживают все хостинги кода и редакторы
- Огромное количество учебников и ответов на вопросы
Минусы
- Основной способ работы — команды в терминале, новичку непривычно
- Установщик для Windows и большая часть документации на английском
- Плохо подходит для больших бинарных файлов: видео, фото, архивов
- Конфликты при объединении приходится разбирать вручную
Сколько стоит
Git полностью бесплатный, в том числе для коммерческой работы: он распространяется по лицензии GNU GPL 2. Платными бывают только сервисы, где хранят репозитории, — GitHub, GitLab и другие. У большинства из них есть бесплатные тарифы с частными репозиториями. GitHub из России открывается и работает, но оплатить его платные тарифы российской картой нельзя; у российских GitFlic и GitVerse такой проблемы нет.
Как установить
- На Windows скачайте установщик Git for Windows с официального сайта git-scm.com, раздел загрузок, или поставьте командой winget install Git.Git.
- В установщике можно почти везде оставить вариант по умолчанию, но редактор для сообщений лучше сменить с Vim на Блокнот или ваш редактор кода.
- На Mac введите в Терминале git —version: если Git не установлен, система сама предложит поставить инструменты разработчика вместе с ним. Можно также поставить его через Homebrew.
- На Linux установите пакет git из репозитория дистрибутива, например sudo apt install git в Ubuntu.
- После установки один раз укажите своё имя и почту командами git config — они будут подписывать ваши коммиты.
Частые вопросы
Чем Git отличается от GitHub?
Git — программа на вашем компьютере, которая ведёт историю изменений. GitHub — сайт, где хранят Git-репозитории, обсуждают правки и работают командой. Git работает и без GitHub, а GitHub без Git бесполезен.
Работает ли Git в России?
Да. Сам Git — программа на компьютере и ни от кого не зависит, официальный сайт открывается. Ограничения касаются только оплаты зарубежных хостингов кода российскими картами.
Есть ли русский язык?
Частично. Многие сообщения Git переведены на русский и показываются, если система на русском языке, но установщик для Windows, справка по командам и официальная документация в основном на английском. Есть перевод книги Pro Git на русский язык.
Можно ли пользоваться Git без командной строки?
Да. Для повседневных действий подойдут GitHub Desktop, встроенные инструменты Visual Studio Code и других редакторов. Но базовые команды всё равно стоит знать: они нужны, когда что-то пошло не так.
