В командной разработке на Git регулярно возникает ситуация: вы работаете над фичей в ветке feature/xxx, ответвившись от master. Пока вы пишете код, коллеги успевают задеплоить в master несколько других фич, которые не пересекаются с вашей, но вносят изменения в общий код (например, исправляют баги, добавляют утилиты, меняют конфигурацию). Ваша задача — обновить свою ветку так, чтобы она включила эти “чужие” изменения, но при этом не тащила в историю лишние merge-коммиты и не смешивала логику. Идеальное решение — git pull origin master --rebase. Разберём этот кейс подробно.
Записи с тегом ‘git’
Как обновить базовую ветку фичи: кейс с rebase
Изменяем историю коммитов в GIT
Рассмотрим две наиболее частые операции — изменение названия коммита и слияние нескольких коммитов в один.
Читать далее »GIT: перестать отслеживать файл или папку
Иногда в процессе разработки возникает ситуация, когда файл или целая директория уже добавлены в репозиторий, но их больше не нужно отслеживать. Например:
- вы по ошибке закоммитили файлы логов или временные данные;
- в проекте появилась папка с кэшем;
- какие-то данные должны оставаться только локально (например, настройки IDE).
Подключение к GitHub по SSH: пошаговая инструкция
Работа с репозиториями через SSH удобнее и безопаснее, чем по HTTPS — вам не нужно вводить пароль при каждом пуше, а авторизация выполняется с помощью криптографических ключей. Разберём процесс полностью: от создания ключа до проверки подключения.
Читать далее »Удалить новые (untracked) файлы в git
Иногда нужно избавиться от новых (лишних) файлов, привожу примеры команд.
Читать далее »GIT workflow или как работать с проектом
Как использовать GIT, может зависеть от многих факторов, например как проходит тестирование, работает ли целая команда над проектом или один разработчик соло.
Читать далее »Установка WordPress через composer
WP так то и сам хорошо управляется с модулями и темами. Вы можете установить модули/темы через админку. Единственный не удобный момент — это первоначальное развертывание проекта с загрузкой нужных вам модулей.
Читать далее »Как сравнить два произвольных файла не включенных в репозиторий средствами git diff
Утилита Git diff может сравнивать не только изменения между ветками, но и вообще произвольные объекты файловой системы, которые даже не включены в репозиторий.
Читать далее »Git pull с передачей логина и пароля
Репозиторий почти всегда требует реквизитов доступа. И, если вы их не храните в локальной конфигурации, то скрипты, содержащие git pull, будут прерываться, запрашивая пару логин/пароль.
Читать далее »Используем PAT для работы с github
GitGub отключили парольную авторизацию, и предлагают использовать SSH с PAT. О том как это настроить и использовать читайте далее в статье.
Читать далее »