Как пользоваться Git: гайд для новичков

Контент-маркетолог
Стаж 13 лет
Опубликовано: 08.10.2026

Git — стандарт де-факто в разработке и самая популярная распределенная система контроля версий (Version Control System, VCS). Навык работы с ней обязателен для программистов и крайне полезен техническим специалистам. В этом пошаговом руководстве разберем базу: от установки консоли до слияния веток и безопасного разрешения конфликтов.

Содержание
Навигация по статье
Что такое Git и GitHub
  1. Что такое Git и GitHub
  2. Ключевые термины простыми словами
  3. Пошаговое руководство по Git
  4. Решение проблем: конфликты слияния
  5. Шпаргалка по основным командам Git
  6. Коротко о главном

Что такое Git и GitHub

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

GitHub — это коммерческий сервис и облачное хранилище для хостинга IT-проектов. Платформа предоставляет визуальный интерфейс для управления кодом, отслеживания багов и совместной работы. Использовать Git можно локально без GitHub, но работать с GitHub без установленного Git не получится.

А на вашем сайте техничка в порядке?
  • Подарим чек-лист по внутренней оптимизации
  • Проконсультируем по SEO-вопросам

Ключевые термины простыми словами

Работа с системой строится вокруг пяти базовых понятий. Без их понимания консольные команды превращаются в слепое копирование.

  • Рабочая директория (Working Directory) — ваша текущая папка с файлами на компьютере. Это место для экспериментов и написания кода.
  • Индекс (Staging Area) — промежуточная зона. Аналогия: корзина в интернет-магазине, где товар выбран, но заказ еще не оформлен. Сюда добавляют файлы командой git add.
  • Репозиторий (Repository) — хранилище истории проекта в скрытой папке .git. Это архив, где лежат все сохраненные версии файлов.
  • Коммит (Commit) — снимок состояния файлов из индекса. К любому коммиту можно откатиться в будущем.
  • Ветка (Branch) — независимая линия разработки. Позволяет безопасно пилить новую фичу, не ломая основной продукт.
  • HEAD — указатель на текущий активный коммит или ветку.

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

Пошаговое руководство по Git

Следуйте приведенной инструкции, чтобы настроить окружение и выполнить первые операции.

Шаг 1: Установка и создание учетной записи

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

Читайте также:

Далее создайте бесплатный аккаунт на GitHub:

  1. Откройте официальную страницу регистрации.
  2. Укажите email, придумайте надежный пароль и логин (username).
  3. Пройдите проверку на робота (капчу).
  4. Нажмите Create account.
  5. Создать аккаунт на GitHub очень просто
    Создать аккаунт на GitHub очень просто
  6. Введите проверочный код, который придет на указанную почту.
  7. Заполните небольшую анкету о себе или пропустите этот этап.

Шаг 2: Создание локального репозитория

Теперь подготовим папку на компьютере для отслеживания изменений.

Действие 1. Откройте терминал (Git Bash или командную строку) и перейдите в нужный каталог. Например, создадим папку на рабочем столе:

cd ~/Desktop
mkdir myproject
cd myproject/

Действие 2. Инициализируйте репозиторий командой init:

git init
Командная строка только выглядит страшно
Командная строка только выглядит страшно

Шаг 3: Создание удаленного репозитория

Чтобы хранить код в облаке и работать в команде, создадим проект на GitHub.

  1. Авторизуйтесь на GitHub.
  2. Нажмите иконку плюса в правом верхнем углу и выберите New repository.
  3. Команды под знаком плюса позволяют создавать репозитории, проекты и т. д.
    Команды под знаком плюса позволяют создавать репозитории, проекты и т. д.
  4. Укажите название проекта, добавьте описание и выберите тип доступа (Public или Private).
  5. Краткое описание позволяет быстро понять, какой проект хранится в репозитории
    Краткое описание позволяет быстро понять, какой проект хранится в репозитории
  6. Нажмите Create repository.

Свяжем локальную папку с облаком и отправим данные на сервер:

git remote add origin https://github.com/[ваш логин]/[название репозитория.git]
git push -u origin main
Перенос локального репозитория на GitHub
Перенос локального репозитория на GitHub

Основная ветка сейчас по умолчанию называется main. В старых legacy-проектах она часто носит имя master. Проверить текущее название можно командой git branch.

5 классных SEO-кейсов
Круче, чем Гудини: как мы вырастили трафик в 2,2 раза

Все вы прекрасно знаете Гарри Гудини: этот фокусник мог выбраться из закрытой бочки, брошенной в воду. Примерно в таких же рамках оказались и мы, начиная работу с сайтом Eurorepar. Узкий функционал, жесткие требования. Но мы справились без магии, увеличив трафик х2!

Как выжать максимум из двадцатилетнего сайта

Можно ли выжать максимум из 20-летнего сайта и докрутить его до современных стандартов? А если есть отягчающие обстоятельства — накрутка поведенческих факторов, антиботы, да еще и админка капризничает и сама удаляет категории?

Долгая дорога в SEO и мощный прорыв

Наш клиент — интернет-магазин B2B промышленной тематики. Он достался нам после предыдущих подрядчиков, и первые год-два мы исправляли их ошибки. А потом началась долгая кропотливая работа, которая в итоге принесла желанный результат.

Qugo: вырастили трафик из блога платформы b2b в 9,7 раз!

Молодой сайт, сложная тематика b2b, крупные конкуренты — с такими вводными трафик и позиции оставляли желать лучшего. Но бы добились цели: повысили трафик и позиции, улучшили узнаваемость бренда

Эффективное ссылочное продвижение для федеральной аптечной сети

Федеральная аптечная сеть пришла в Kokoc Performance (входит в Kokoc Group) за ссылочным продвижением. Интересно, что в компании есть своя in-house команда по SEO, которая подготовила ссылочную стратегию, а за ее реализацией обратилась к нам.

1/5

Если вам нужно скачать уже существующий чужой проект с сервера на свой ПК, используйте команду клонирования:

git clone https://github.com/логин/репозиторий.git

Шаг 4: Добавление файлов и настройка .gitignore

Система видит появление новых файлов в папке, но игнорирует их до прямой команды. Проверить статус рабочей директории можно так:

git status
Командная строка покажет, какие файлы уже отслеживаются Git
Командная строка покажет, какие файлы уже отслеживаются Git

Красным цветом подсветятся неотслеживаемые элементы (untracked). Чтобы добавить конкретный документ в индекс, введите:

git add [название файла]
Настроить отслеживание можно для отдельных файлов
Настроить отслеживание можно для отдельных файлов

Важное правило: перед первым коммитом обязательно создайте файл .gitignore в корне проекта. Он предотвращает случайную отправку служебного мусора и конфиденциальных данных (паролей, токенов) в публичный доступ. Пример содержимого .gitignore:

node_modules/
*.log
.env
.idea/
build/

Шаг 5: Удаление файлов из индекса

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

Для отмены индексации используйте современный синтаксис:

git restore --staged [путь к файлу]

Если конфиденциальный файл уже попал в историю репозитория до настройки .gitignore, удалите его из отслеживания специальной командой, добавьте имя в .gitignore и сделайте новый коммит:

git rm --cached [имя файла]
Любое действие можно отменить
Любое действие можно отменить

Шаг 6: Коммит изменений

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

git commit -m "Добавлена форма авторизации"

Шаг 7: Отмена коммита (Revert vs Reset)

Выбор инструмента для отмены зависит от того, успели ли вы отправить код на удаленный сервер.

Сценарий 1: Коммит уже опубликован (push).
Используйте только git revert [хэш коммита]. Эта команда создает новый коммит, который зеркально отменяет предыдущие правки. История сохраняется, и у коллег не возникает конфликтов при синхронизации.

Git позволяет отменять коммиты
Git позволяет отменять коммиты

Сценарий 2: Коммит существует только локально.
Здесь применяется git reset. У команды есть три режима работы:

  • --soft HEAD~1 — отменяет сам коммит, но оставляет файлы в индексе (удобно, если забыли добавить пару строк).
  • --mixed HEAD~1 (по умолчанию) — отменяет коммит и убирает файлы из индекса, оставляя их в рабочей директории.
  • --hard HEAD~1 — безвозвратно удаляет коммит и все изменения в файлах. Применять с максимальной осторожностью.

Читайте также:

Шаг 8: Создание новой ветки

Ветки изолируют разработку. Создание копии проекта позволяет тестировать гипотезы без риска сломать production-версию (ветку main).

git branch [название новой ветки]
Отдельные ветки позволяют не вносить непроверенные изменения в основную версию
Отдельные ветки позволяют не вносить непроверенные изменения в основную версию

Шаг 9: Переключение между ветками

Для навигации по веткам используйте современную команду switch (вместо устаревающего синтаксиса checkout):

git switch [название ветки]

Типичная ошибка новичков: переключение напрямую на хэш коммита (git checkout [хэш]). Это приводит к состоянию detached HEAD (отсоединенный указатель). Коммиты, созданные в этом режиме, не привязаны ни к одной ветке и будут удалены сборщиком мусора. Если вы случайно оказались в detached HEAD и написали код, сохраните его, создав новую ветку: git switch -c [имя ветки].

Git позволяет легко переключаться между ветками
Git позволяет легко переключаться между ветками

Шаг 10: Переименование веток

Частая задача — безопасное переименование старой ветки master в main в legacy-проектах без потери истории. Процесс состоит из трех этапов.

Сначала переименовываем локально:

git branch -m master main
Название локальной ветки изменено
Название локальной ветки изменено

Переименовать удаленную ветку напрямую нельзя. Нужно удалить старую и отправить новую:

git push origin --delete master
git push -u origin main

Шаг 11: Удаление веток

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

Удаление локально:

git branch -d [название ветки]

Удаление на сервере GitHub:

git push origin --delete [название ветки]
В примере удалена локальная ветка
В примере удалена локальная ветка

Шаг 12: Установка upstream-ветки

Upstream-ветка — это удаленная ветка по умолчанию, с которой синхронизируется ваша локальная. Без этой настройки при попытке сделать push система выдаст ошибку, так как не понимает, куда именно отправлять данные.

Качественная оценка удобства сайта
Мы смотрим:
  • тепловые карты скроллинга страниц и кликов
  • отчеты из систем аналитики
  • записи поведения конкретных пользователей
Узнать больше

Установить связь (флаг -u) нужно при первой отправке:

git push -u origin [имя ветки]

После этого для синхронизации достаточно писать короткие git push и git pull. Важно: несуществующей команды git set upstream нет, это распространенное заблуждение.

Читайте также:

Шаг 13: Отвязка удаленного репозитория

Если проект переехал с GitHub на GitLab или другой хостинг, старое подключение (origin) необходимо удалить.

git remote remove origin
Удалить удаленный репозиторий можно с помощью команды git remote remove
Удалить удаленный репозиторий можно с помощью команды git remote remove

Шаг 14: Объединение веток (Merge)

Команда merge интегрирует изменения из одной ветки в другую. Разберем алгоритм слияния фичи с веткой main.

  1. Переключитесь на целевую ветку: git switch main.
  2. Git checkout master поможет переключиться на основную ветку
    Git checkout master поможет переключиться на основную ветку
  3. Подтяните свежие изменения с сервера. Команда git fetch только скачивает новые коммиты в скрытую область, а git pull скачивает и сразу сливает их с вашей текущей веткой. Используем pull.
  4. Git pull проверяет наличие последних обновлений в ветке
    Git pull проверяет наличие последних обновлений в ветке
  5. Выполните слияние: git merge [название ветки с фичей].
Объединение веток позволяет включать новый функционал в основной продукт
Объединение веток позволяет включать новый функционал в основной продукт

Решение проблем: конфликты слияния

Конфликт (merge conflict) возникает, когда два разработчика изменили одну и ту же строку кода в разных ветках. Система останавливает процесс и просит ручного вмешательства. Это штатная ситуация.

В проблемном файле Git расставит точные текстовые маркеры:

<<<<<<< HEAD
ваш вариант кода
=======
вариант кода из другой ветки
>>>>>>> feature/login

Алгоритм безопасного разрешения:

  1. Откройте файл в редакторе кода.
  2. Проанализируйте оба блока и оставьте правильный вариант (или скомбинируйте их).
  3. Вручную удалите все служебные маркеры (<<<<<<<, =======, >>>>>>>).
  4. Добавьте исправленный файл в индекс: git add [файл].
  5. Завершите процесс: git commit -m "Разрешен конфликт".

Если вы запутались и хотите отменить слияние полностью, введите git merge --abort. Репозиторий вернется к исходному состоянию.

Шаг 15: Создание Pull Request

Pull Request (PR) — это запрос на проверку вашего кода перед вливанием в основную ветку на GitHub. Это основа процесса Code Review.

  1. Создайте файл, добавьте его в индекс и закоммитьте.
  2. В терминале есть собственный текстовый редактор
    В терминале есть собственный текстовый редактор
  3. Отправьте ветку на сервер: git push origin [имя ветки].
  4. Зайдите в репозиторий на GitHub. Появится зеленая кнопка Compare & pull request. Нажмите ее.
  5. Запросы на изменения репозитория рассматриваются на GitHub
    Запросы на изменения репозитория рассматриваются на GitHub
  6. Опишите суть изменений и нажмите Create pull request.
Создание pull request в GitHub
Создание pull request в GitHub

Читайте также:

Шаг 16: Синхронизация изменений

После того как PR одобрен и слит на GitHub, ваша локальная папка об этом не знает. Обязательно подтяните обновления:

git pull origin main
Git автоматически предлагает обновить локальный репозиторий
Git автоматически предлагает обновить локальный репозиторий

Шпаргалка по основным командам Git

Сохраните эту таблицу. Здесь собраны консольные команды, необходимые для ежедневной продуктивности.

Команда Что делает Пример
git initИнициализировать репозиторийgit init
git cloneСклонировать удаленный репозиторийgit clone https://github.com/user/repo.git
git statusПоказать состояние файловgit status
git addДобавить в индексgit add .
git commitСоздать коммитgit commit -m "сообщение"
git pushОтправить на серверgit push origin main
git pullСкачать и слить измененияgit pull
git switchПереключить веткуgit switch feature-x
git mergeСлить веткуgit merge feature-x
git logИстория коммитовgit log --oneline
git diffПоказать отличияgit diff HEAD
git rm --cachedУбрать из отслеживанияgit rm --cached .env
git stashСпрятать незакоммиченноеgit stash

Коротко о главном

  • Git — распределенная система контроля версий, защищающая код от случайной потери и конфликтов при командной разработке.
  • Архитектура состоит из трех уровней: рабочая директория (где пишем код), индекс (что готовим к сохранению) и репозиторий (архив истории).
  • Основная ветка по современным стандартам называется main. Проверяйте название через git branch.
  • Обязательно настраивайте файл .gitignore до первого коммита, чтобы пароли и логи не утекли в сеть.
  • Для отмены опубликованных изменений используйте безопасный git revert. Команда git reset подходит только для локальных правок.
  • При возникновении конфликтов слияния не паникуйте: откройте файл, выберите нужный код, удалите маркеры и закоммитьте результат.

Ручной экспресс-SEO-аудит сайта
SEO-специалист
  • проверит ключевые элементы продвижения 
  • найдёт реальные точки роста проекта

Получить аудит

Комментарии (5)

Р
Роман Шестаков
09.10.2026 14:38 ★ ★ ★ ★ ★
Внедрили работу строго через отдельные ветки после случайного затирания файлов на клиентском интернет-магазине. В итоге сократили сроки сдачи проектов на 5 дней и сэкономили порядка 74 тысяч рублей на переделках.
d
dev_max
10.10.2026 19:50 ★ ★ ★ ★ ★
Отличная шпаргалка для тех, кто только начинает.
А
Александр Зимин
11.10.2026 17:39 ★ ★ ★ ★ ★
Описанный алгоритм ручного разрешения конфликтов при слиянии веток требует идеальной коммуникации разработчиков. При масштабировании процессов этот человеческий фактор неизбежно раздует time-to-market и итоговую стоимость запуска новых лендингов.
i
i.popov
11.10.2026 18:41 ★ ★ ★ ★ ★
Мы давно перевели контент-отдел на работу через ветки при сборке 14 изолированных воронок. Такой подход позволил безопасно крутить А/В тесты на живом трафике и принес 318 целевых лидов. Кто в вашем агентстве апрувит подобные пулл-реквесты от нетехнических специалистов?
K
Kokoc Perfomance
11.10.2026 19:06
В продакшн-проектах PR от нетехнических коллег у нас проходят через двухступенчатый ревью: бизнес-владелец (маркетолог/продакт) валидирует смысл и гипотезу, а техлид или ответственный разработчик — реализацию и влияние на общую Git‑архитектуру воронок. Такой сетап как раз позволяет смело гонять A/B на бою и при этом не разъезжаться ни по данным, ни по кодовой базе.
💬 Оставить комментарий
Не забудьте на нас
подписаться!
Тут собрано всё самое интересное. Рассказываем и вдохновляем
Max
TenChat
Telegram
ВКонтакте
Популярные статьи автора
Узнайте стоимость продвижения сейчас
Выберите удобный способ связи:
Выберите удобный способ связи:
Max Telegram
Введите Ваш номер телефона:*
Введите адрес Вашего сайта:*
Введите Ваше имя:*

Введите Ваш Email:*
Введите адрес Вашего сайта:*
Введите Ваше имя:*

Оперативно отвечаем в рабочее время: с 10:00 до 19:00
Оперативно отвечаем в рабочее время: с 10:00 до 19:00
Вы уже проголосовали
Возьмем ТОП вместе?

Цена лидов в различных нишах
Тематика Стоимость лида (Москва/Россия)
Отдых 500
Мебель 350
Оборудование 500
Бансковские услуги 500
Безопасность 500
Организация мероприятий, концерты, праздники 500
Недвижимость 500
Строительство и отделка 500
Грузоперевозки 500
Доставка еды 350
Юридические услуги 500
Бухгалтерские услуги 500
Пластиковые окна 500
Детские товары 350
Автозапчасти 350
Образование 500
Возьмем ТОП вместе?

Оставить заявку сейчас
Выберите интересующую услугу *

Подпишитесь на рассылку
Не пропустите самое интересное из мира SEO и Digital. Только актуальные и самые крутые статьи.
Заявка успешно отправлена!
Наши сотрудники уже приступили к анализу Вашего сайта. Наш менеджер свяжется с вами в течение дня, спасибо!
Напишите нам Max Telegram