tgoop.com/frontend_1/4021
Last Update:
🚀 Git для фронтендера: Осваиваем продвинутые команды!
Все мы знаем основы Git: add
, commit
, push
. Но чтобы по-настоящему эффективно работать в команде и поддерживать чистую историю проекта, нужно копнуть глубже. Сегодня поговорим о трёх мощных инструментах, которые сделают вашу работу с Git намного комфортнее: ветки, разрешение конфликтов и rebase.
🌱 Ветки: Ваш личный песочник
Ветки – это как параллельные вселенные вашего кода. Они позволяют вам работать над новой фичей или исправлением бага, не затрагивая основной код (обычно ветку main
или master
).
Почему это важно?
Основные команды для работы с ветками:
git branch <название_ветки>
: Создать новую ветку.
git checkout <название_ветки>
: Переключиться на ветку.
git checkout -b <название_ветки>
: Создать и сразу переключиться (комбинация двух предыдущих).
git branch -d <название_ветки>
: Удалить ветку (после мержа).
git merge <название_ветки>
: Влить изменения из указанной ветки в текущую.
💥 Разрешение конфликтов: Не паникуем!
Конфликты слияния (merge conflicts) – это неизбежная часть командной разработки. Они возникают, когда Git не может автоматически объединить изменения из разных веток, потому что они затронули одну и ту же строку кода или файл.
Как это выглядит?
В файле появятся специальные маркеры:
<<<<<<< HEAD
Ваш код в текущей ветке
=======
Код из ветки, которую вы мержите
>>>>>>> feature/new-design
Что делать?
1. Определите конфликтующие участки: Ищите маркеры
<<<<<<<
, =======
, >>>>>>>
.2. Примите решение: Вручную отредактируйте файл, оставив нужный код (ваш, чужой или комбинацию).
3. Удалите маркеры: Очень важно убрать все эти
<<<<<<<
, =======
, >>>>>>>
!4. Добавьте и закоммитьте изменения:
git add <конфликтующий_файл>
git commit -m "Resolve merge conflict"
Спокойствие и внимание к деталям – залог успешного разрешения конфликтов!
✨ Git Rebase: Чистая история коммитов
git rebase
позволяет переписать историю коммитов, перемещая или комбинируя их. В отличие от merge
, который добавляет новый коммит слияния, rebase
"пересаживает" ваши коммиты на новый базовый коммит, создавая линейную и чистую историю.Когда использовать
rebase
?main
: Сделать историю более читаемой, сгруппировать мелкие коммиты.main
: Подтянуть свежие изменения из main
в свою фича-ветку без создания лишнего мерж-коммита.Пример использования:
1. Переключитесь на свою фича-ветку:
git checkout feature/my-new-feature
2. Заберите свежие изменения из
main
: git pull origin main
(или git fetch origin main
)3. Выполните rebase:
git rebase main
Важно:
rebase
публичных веток! Это может сломать историю для других разработчиков. Используйте rebase только для своих личных веток, которые ещё не были отправлены в общий репозиторий или над которыми вы работаете в одиночку.rebase
могут возникнуть конфликты, решать их нужно так же, как и при merge
.👉 @frontend_1