Справочник базовых команд Git (Cheat Sheet)
Описание страницы: Карманный справочник по основным командам Git, сгруппированный по этапам работы системного администратора.
📁 1. Инициализация и клонирование репозиториев
# Клонирование удаленного репозитория в текущую папку git clone gitea-lab:admold/infra.git # Клонирование репозитория в конкретную папку с указанием пути git clone gitea-lab:admold/infra.git ~/projects/ansible # Быстрое клонирование без истории коммитов (полезно для CI/CD-пайплайнов) git clone --depth 1 gitea-lab:admold/infra.git # Инициализация нового пустого Git-репозитория в текущей локальной папке git init
🔍 2. Просмотр текущего состояния и истории изменений
# Просмотр статуса рабочей копии (измененные, удаленные, неотслеживаемые файлы) git status # Просмотр статуса в кратком компактном виде git status -s # Сравнение изменений в файлах, которые еще не добавлены в индекс (staged) git diff # Сравнение изменений в конкретном файле git diff playbooks/site.yml # Просмотр истории изменений (коммитов) git log # Краткий просмотр последних 5 коммитов (в одну строку каждый) git log -5 --oneline
✏️ 3. Фиксация и отправка изменений (Commit & Push)
# Добавление конкретного файла в индекс для последующего коммита git add playbooks/site.yml # Добавление всех изменений в отслеживаемых файлах (без добавления новых неотслеживаемых) git add -u # Фиксация изменений с кратким комментарием git commit -m "fix: update configurations for backup paths" # Отправка локальных изменений на удаленный сервер в ветку main git push origin main
🌿 4. Ветки (Branches) и слияния
# Просмотр списка всех локальных веток git branch # Создание новой ветки и автоматический переход на неё git switch -c feature/monitoring # Переключение на существующую ветку git switch main # Слияние изменений из ветки feature/monitoring в текущую активную ветку git merge feature/monitoring # Удаление локальной ветки после завершения работ git branch -d feature/monitoring
🔄 5. Отмена изменений и откат состояний
# Сброс изменений в файле до состояния последнего коммита git restore playbooks/site.yml # Сброс файла из подготовленной зоны (staged) обратно в измененные git restore --staged playbooks/site.yml # Откат последнего коммита с сохранением изменений в файлах git reset --soft HEAD~1 # Полный откат последнего коммита с УДАЛЕНИЕМ всех изменений в файлах (опасно!) git reset --hard HEAD~1 # Безопасная отмена уже отправленного на сервер коммита (создает новый коммит-отмену) git revert a1b2c3d --no-edit
📦 6. Временное сохранение изменений (Stash)
# Спрятать все незакоммиченные изменения в специальный карман (чтобы очистить рабочую копию) git stash # Вернуть сохраненные изменения обратно в рабочую копию и удалить запись из кармана git stash pop