167 lines
4.3 KiB
Markdown
167 lines
4.3 KiB
Markdown
# Git Cheatsheet
|
||
|
||
## Основные команды
|
||
|
||
### Настройка пользователя
|
||
```bash
|
||
# Установка имени пользователя
|
||
$ git config --global user.name "Ваше Имя"
|
||
|
||
# Установка email пользователя
|
||
$ git config --global user.email "ваш.email@example.com"
|
||
|
||
# Проверка текущей конфигурации
|
||
$ git config --list
|
||
```
|
||
|
||
### Работа с репозиторием
|
||
```bash
|
||
# Инициализация нового репозитория
|
||
$ git init
|
||
|
||
# Клонирование репозитория
|
||
$ git clone <URL>
|
||
```
|
||
|
||
### Статус и информация
|
||
```bash
|
||
# Проверка состояния репозитория
|
||
$ git status
|
||
|
||
# Просмотр истории коммитов
|
||
$ git log
|
||
|
||
# Просмотр одной строки истории коммитов
|
||
$ git log --oneline
|
||
|
||
# Просмотр изменений перед коммитом
|
||
$ git diff
|
||
```
|
||
|
||
### Работа с файлами
|
||
```bash
|
||
# Добавление файлов в область подготовки
|
||
$ git add <file>
|
||
|
||
# Добавление всех файлов
|
||
$ git add .
|
||
|
||
# Удаление файла из репозитория и рабочего каталога
|
||
$ git rm <file>
|
||
|
||
# Удаление файла только из репозитория
|
||
$ git rm --cached <file>
|
||
```
|
||
|
||
### Коммиты
|
||
```bash
|
||
# Создание коммита
|
||
$ git commit -m "Сообщение коммита"
|
||
|
||
# Одновременное добавление и коммит изменений
|
||
$ git commit -am "Сообщение коммита"
|
||
```
|
||
|
||
### Ветвление
|
||
```bash
|
||
# Просмотр веток
|
||
$ git branch
|
||
|
||
# Создание новой ветки
|
||
$ git branch <branch_name>
|
||
|
||
# Переключение на ветку
|
||
$ git checkout <branch_name>
|
||
|
||
# Создание и переход на новую ветку
|
||
$ git checkout -b <branch_name>
|
||
```
|
||
|
||
### Слияние и удаление веток
|
||
```bash
|
||
# Слияние ветки в текущую
|
||
$ git merge <branch_name>
|
||
|
||
# Удаление ветки
|
||
$ git branch -d <branch_name>
|
||
|
||
# Принудительное удаление ветки
|
||
$ git branch -D <branch_name>
|
||
```
|
||
|
||
### Работа с удалёнными репозиториями
|
||
```bash
|
||
# Просмотр удалённых репозиториев
|
||
$ git remote -v
|
||
|
||
# Добавление удалённого репозитория
|
||
$ git remote add origin <URL>
|
||
|
||
# Удаление удалённого репозитория
|
||
$ git remote remove <name>
|
||
|
||
# Отправка изменений в удалённый репозиторий
|
||
$ git push origin <branch_name>
|
||
|
||
# Забрать изменения из удалённого репозитория
|
||
$ git pull origin <branch_name>
|
||
```
|
||
|
||
### Перезапись истории
|
||
```bash
|
||
# Изменение последнего коммита
|
||
$ git commit --amend
|
||
|
||
# Сброс изменений в файле
|
||
$ git checkout -- <file>
|
||
|
||
# Сброс коммитов (оставить изменения в рабочем каталоге)
|
||
$ git reset <commit_hash>
|
||
|
||
# Полный сброс коммитов и изменений
|
||
$ git reset --hard <commit_hash>
|
||
```
|
||
|
||
### Теги
|
||
```bash
|
||
# Создание тега
|
||
$ git tag <tag_name>
|
||
|
||
# Создание аннотированного тега
|
||
$ git tag -a <tag_name> -m "Описание"
|
||
|
||
# Отправка тегов в удалённый репозиторий
|
||
$ git push origin <tag_name>
|
||
|
||
# Удаление тега
|
||
$ git tag -d <tag_name>
|
||
```
|
||
|
||
### Полезные команды
|
||
```bash
|
||
# Отображение графа коммитов
|
||
$ git log --graph --oneline
|
||
|
||
# Исправление файла из последнего коммита
|
||
$ git add <file> && git commit --amend --no-edit
|
||
|
||
# Стэш изменений
|
||
$ git stash
|
||
|
||
# Просмотр стэша
|
||
$ git stash list
|
||
|
||
# Применение последнего стэша
|
||
$ git stash apply
|
||
|
||
# Удаление последнего стэша
|
||
$ git stash drop
|
||
|
||
# Очистка стэша
|
||
$ git stash clear
|
||
```
|
||
|
||
### Справка
|
||
```bash
|
||
# Помощь по команде
|
||
$ git help <command> |