vault backup: 2026-04-30 15:49:16

This commit is contained in:
Dmitry
2026-04-30 15:49:17 +03:00
parent 72f2843c70
commit 8ddda4ee45
+13 -26
View File
@@ -21,46 +21,33 @@ title: Основные команды git
`git add` - индексирование изменений в локальной копии отслеживаемого проекта. `git add` - индексирование изменений в локальной копии отслеживаемого проекта.
`git commit` `git commit` - подготовка к отправке в удаленный репозиторий набора проиндексированных изменений в локальном проекте.
одготовка к отправке в удаленный репозиторий набора проиндексированных изменений в локальном проекте. `git push` - выгрузка в удаленный репозиторий подготовленного набора проиндексированных изменений из отслеживаемой локальной копии.
#### `git push` `git pull` - загрузка содержимого из удаленного репозитория и немедленное слияние изменений в локальный отслеживаемый репозиторий.
Выгрузка в удаленный репозиторий подготовленного набора проиндексированных изменений из отслеживаемой локальной копии. `git restore` - отмена индексации изменений в локальном репозитории.
#### `git pull` `git revert` - отмена подготовленных к отправке проиндексированных изменений в локальном репозитории с сохранением истории.
Загрузка содержимого из удаленного репозитория и немедленное слияние изменений в локальный отслеживаемый репозиторий. `git merge` - слияние ответвления (ветки ответвленной с веткой изначальной). Изменения часто проходят процедуру согласования с участниками команды разработки через механизм merge Request.
#### `git restore` `git rebase` - операция, подобная слиянию (Git merge).
Отмена индексации изменений в локальном репозитории. Команды `git merge` и `git rebase` решают одну и ту же проблему – слияние одной ветки в другую, но делают это по-разному.
#### `git revert` **git merge** — это неразрушающая операция, существующие ветки никак не изменяются.
Отмена подготовленных к отправке проиндексированных изменений в локальном репозитории с сохранением истории.
#### `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) ![](https://legacy.merionet.ru/images/devops/images/3756/img_04.png)
**Git rebase** — это операция фактического перебазирования ответвленной ветки в исходную, с созданием идеальной линейной истории проекта. **git rebase** — это операция фактического перебазирования ответвленной ветки в исходную, с созданием идеальной линейной истории проекта.
![](https://legacy.merionet.ru/images/devops/images/3756/img_03.png) ![](https://legacy.merionet.ru/images/devops/images/3756/img_03.png)
Золотое правило перебазирования: Золотое правило перебазирования:
**Never rebase while you're on a public branch** (никогда не используйте git rebase в публичных репозиториях) Если вы предпочитаете иметь чистую линейную историю без ненужных коммитов слияния – используйте Git rebase. **"Never rebase while you're on a public branch"** - (никогда не используйте git rebase в публичных репозиториях).
Если вы предпочитаете иметь чистую линейную историю без ненужных коммитов слияния – используйте `git rebase`.
Если вам необходимо сохранить полную историю проекта и избежать перезаписи публичных коммитов – используйте команду Git merge. Если вам необходимо сохранить полную историю проекта и избежать перезаписи публичных коммитов – используйте команду `git merge`.