Если вы когда-либо теряли важные изменения в своем проекте или сталкивались с необходимостью вернуться к предыдущей версии кода, вам знакомы все прелести головной боли, связанные с этим.
Ранее многим разработчикам приходилось вручную создавать копии своих проектов и управлять версиями, перезаливая папку с проектом на локальный сервер. Это было трудоемко и занимало много времени. Однако с появлением Git эта проблема решается в несколько простых шагов.
Git - это отличный инструмент, который позволяет отслеживать все изменения в проекте и легко возвращаться к любой его версии, не создавая копии напрямую.
К примеру: мы разрабатываем проект в Visual Studio Code и периодически нуждаемся в создании копий всего проекта. Также у нас возникает необходимость возвращаться к определенной версии проекта и продолжать работу с ней. Как можно реализовать эту задачу на локальной системе с помощью Git?
Шаги для работы с Git в проекте - создание копий версий и возврат к ним при необходимости
Предварительная установка Git:
Прежде чем начать, убедимся, что Git установлен в нашей системе. Мы можем скачать его с официального сайта git-scm.com и следовать инструкциям по установке для нашей операционной системы.
Инициализация Git:
Откроем терминал в VSCode в папке нашего проекта. Инициализируем новый Git репозиторий:
git init
Добавление файлов:
Создадим несколько файлов в папке нашего проекта (например, index.html
, style.css
и script.js
). Добавим эти файлы в индекс:
git add .
Коммит изменений:
Зафиксируем изменения с сообщением:
git commit -m "Первоначальная версия проекта"
Работа над проектом:
Внесем изменения в наши файлы. Например, изменим текст в index.html
.
Создание нового коммита:
Сохраним изменения:
git add .
git commit -m "Изменения в index.html"
Сохранение дополнительных версий:
Продолжим вносить изменения и создавать коммиты:
git add .
git commit -m "Добавлен новый стиль в style.css"
Просмотр истории коммитов:
Чтобы увидеть, какие коммиты мы сделали, используем:
git log
Это покажет список наших коммитов с их идентификаторами (например, abc1234
).
Возврат к предыдущему коммиту:
Если мы хотим вернуться к предыдущему коммиту, используем:
git checkout <идентификатор_коммита>
Например:
git checkout abc1234
После этого наш проект вернется к состоянию, сохраненному в том коммите.
Возврат к актуальной версии:
Чтобы вернуться к последнему коммиту, выполним:
git checkout main # или master в зависимости от нашей основной ветки
Сделать определенный коммит главной версией проекта:
Если мы хотим сделать состояние нашего проекта после работы в определённом коммите главной версией, выполним следующие шаги:
- Переключимся на нужный коммит с помощью команды:
git checkout abc1234
- Создадим новую ветку от этого коммита, если хотим сохранить изменения:
git checkout -b new-branch-name
- Внесём необходимые изменения и зафиксируем их:
git add .
git commit -m "Описание изменений"
- Переключемся на основную ветку:
git checkout main
- Сольём изменения из новой ветки в основную ветку:
git merge new-branch-name
Таким образом, мы можем сделать состояние проекта, сохраненное в определенном коммите, актуальным для работы, сохраняя при этом все предыдущие версии в истории Git.
Примерный сценарий работы
Первый коммит:
Мы создали index.html
и сделали коммит с сообщением "Первоначальная версия проекта".
Внесение изменений:
Мы изменили index.html
и сделали коммит с сообщением "Изменения в index.html".
Создание новой версии:
Мы добавили стили и сделали коммит, зафиксировав изменения.
Возврат к предыдущей версии:
Мы решили, что изменения в style.css
не нужны, и хотим вернуться к предыдущему коммиту. Выполним git log
, найдем идентификатор коммита и выполним git checkout <идентификатор>
.
Далее либо работаем с отдельным коммитом, либо создаем от него новую ветку (что является более правильным подходом) и работаем уже в ней. После, при необходимости, можем объединить новую ветку с главной.
Таким образом, мы можем быстро откатываться к нужной версии проекта в случае непредвиденных ситуаций и продолжать работу с уже актуальной версией.