vault backup: 2026-05-24 15:03:28
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
---
|
||||
status: seed
|
||||
type: guide
|
||||
tags:
|
||||
- devops
|
||||
- git
|
||||
- cli
|
||||
created: 2025-12-17
|
||||
updated: 2026-05-07
|
||||
title: Основные команды git
|
||||
---
|
||||
|
||||
# Основные команды git
|
||||
|
||||
Эта заметка — краткий справочник по базовым командам [[Git]].
|
||||
|
||||
## Создание и получение репозитория
|
||||
|
||||
- `git init` — создать новый Git-репозиторий в текущем проекте.
|
||||
- `git clone` — создать локальную копию удалённого репозитория.
|
||||
|
||||
## Работа с ветками
|
||||
|
||||
- `git branch` — показать, создать или удалить ветки.
|
||||
- `git checkout` — переключиться на ветку, файл или коммит.
|
||||
- `git merge` — слить одну ветку в другую.
|
||||
- `git rebase` — перебазировать ветку поверх другой ветки.
|
||||
|
||||
## Работа с изменениями
|
||||
|
||||
- `git status` — показать состояние рабочего каталога.
|
||||
- `git add` — добавить изменения в индекс.
|
||||
- `git commit` — зафиксировать проиндексированные изменения.
|
||||
- `git restore` — откатить изменения или убрать их из индекса.
|
||||
- `git revert` — создать новый коммит, отменяющий выбранный старый коммит без переписывания истории.
|
||||
|
||||
## Работа с удалённым репозиторием
|
||||
|
||||
- `git push` — отправить локальные коммиты в удалённый репозиторий.
|
||||
- `git pull` — получить изменения из удалённого репозитория и сразу объединить их с локальной веткой.
|
||||
|
||||
Платформы вроде [[Gitlab]] используют эти операции как основу для командной разработки, merge request и CI/CD.
|
||||
|
||||
## Merge и rebase
|
||||
|
||||
`git merge` и `git rebase` решают одну задачу: переносят изменения из одной ветки в другую. Разница в том, как они меняют историю.
|
||||
|
||||
### Merge
|
||||
|
||||
`git merge` создаёт слияние веток без переписывания уже существующих коммитов. Это безопасный вариант для публичных веток.
|
||||
|
||||

|
||||
|
||||
### Rebase
|
||||
|
||||
`git rebase` переносит коммиты текущей ветки поверх другой ветки и помогает получить более линейную историю.
|
||||
|
||||

|
||||
|
||||
> [!important] Золотое правило rebase
|
||||
> Не выполнять `git rebase` над публичной веткой, если её уже используют другие разработчики.
|
||||
|
||||
## Когда выбирать merge или rebase
|
||||
|
||||
- Если нужно сохранить полную историю и не переписывать публичные коммиты — использовать `git merge`.
|
||||
- Если нужна чистая линейная история в локальной или личной ветке — использовать `git rebase`.
|
||||
|
||||
## Связанные заметки
|
||||
|
||||
- [[Git]]
|
||||
- [[Gitlab]]
|
||||
- [[DevOps - основы]]
|
||||
Reference in New Issue
Block a user