Files
SecondBrain/99 System/Archive/Основные команды git.md
2026-05-31 10:18:48 +03:00

54 lines
4.0 KiB
Markdown

---
status: processing
type: concept
tags: []
created: 2025-12-17
updated: 2026-04-30
aliases:
- Основные команды git
---
# Основные команды git
`git init` - создание нового Git-репозитория (преобразование существующего проекта или создание нового пустого репозитория).
`git clone` - создание локальной копии удаленного Git-репозитория.
`git branch` - создание отдельной ветки на основе существующей для осуществления в новой ветке процесса разработки с возможным последующим слиянием.
`git checkout` - переключение между различными версиями целевого объекта (файлы, коммиты и ветки).
`git status` - отображение рабочего состояния файлов в локальной копии отслеживаемого проекта.
`git add` - индексирование изменений в локальной копии отслеживаемого проекта.
`git commit` - подготовка к отправке в удаленный репозиторий набора проиндексированных изменений в локальном проекте.
`git push` - выгрузка в удаленный репозиторий подготовленного набора проиндексированных изменений из отслеживаемой локальной копии.
`git pull` - загрузка содержимого из удаленного репозитория и немедленное слияние изменений в локальный отслеживаемый репозиторий.
`git restore` - отмена индексации изменений в локальном репозитории.
`git revert` - отмена подготовленных к отправке проиндексированных изменений в локальном репозитории с сохранением истории.
`git merge` - слияние ответвления (ветки ответвленной с веткой изначальной). Изменения часто проходят процедуру согласования с участниками команды разработки через механизм merge Request.
`git rebase` - операция, подобная слиянию (Git merge).
Команды `git merge` и `git rebase` решают одну и ту же проблему – слияние одной ветки в другую, но делают это по-разному.
**git merge** — это неразрушающая операция, существующие ветки никак не изменяются.
![](https://legacy.merionet.ru/images/devops/images/3756/img_04.png)
**git rebase** — это операция фактического перебазирования ответвленной ветки в исходную, с созданием идеальной линейной истории проекта.
![](https://legacy.merionet.ru/images/devops/images/3756/img_03.png)
> [!important] Золотое правило перебазирования:
>
> **"Never rebase while you're on a public branch"** - (никогда не используйте git rebase в публичных репозиториях).
> Если вы предпочитаете иметь чистую линейную историю без ненужных коммитов слияния – используйте `git rebase`.
>
> Если вам необходимо сохранить полную историю проекта и избежать перезаписи публичных коммитов – используйте команду `git merge`.