---
tags: Wiki
---
# Работа с GIT
## Коммиты
Делаем на английском по данному принципу https://habr.com/en/post/183646/
## ИНК
### Репозиторий
https://bitbucket.org/shidow/ink
### Ветки
#### Основные
`master` - копия рабочего сервера
`dev` - копия тестового сервера
#### Дополнительные
`feature-{описание-через-дефис-на-английском}` - для больших доработок (предполагает продолжительное тестирование на тестовом сервере)
`bugfix-{описание-через-дефис-на-английском}` - для больших исправлений (возможно тестирование или вообще отказ от изменений)
`hotfix-{описание-через-дефис-на-английском}` - для небольших изменений, которые нельзя выполнить в ветке `master`
:::warning
Код в ветках `master` и `dev` всегда должен совпадать с кодом на соответсвующих серверах
:::
### Принцип работы
:::warning
Перед каждым коммитом желательно сделать pull ветки `master`
:::
Все небольшие изменения (не требующие тестирования или быстрое тестирование на тестовом сервере) делаем в ветке `master`, после деплоя делаем *merge* в ветку `dev`.
Дополнительные ветки создаем из ветки `master`.
Не вносим никаких изменений напрямую в ветке `dev`.
Для дополнительных веток делаем *merge* в ветку `dev` для тестирования. Все исправления вносим в оригинальных ветках и переносим в ветку `dev` командой *merge*. После тестирования сливаем нужные дополнительные ветки в `master`.
:::danger
Не делаем *merge* ветки `dev` в ветку `master`
:::
После заливки в ветку `master` смерженные дополнительные ветки удаляем.
### Деплой
Перед деплоем на рабочий или тестовый сервер делаем *pull* соответствующей ветки.
:::danger
Не делаем *pull* с рабочего или тестового сервера. Git на серверах используем только для деплоя
:::