GIT workflow или как работать с проектом

Как использовать GIT, может зависеть от многих факторов, например как проходит тестирование, работает ли целая команда над проектом или один разработчик соло.

Соло разработка

Концепция работы с GIT в случае одного разработчика сводится обычно к тому, что есть одна основная ветка (main или master) и вы работаете преимущественно с ней.

Простые фиксы и фичи коммитятся прямо в ветку, что то посложнее, что может быть прервано багфиксом или мелким тикетом лучше делать в отдельной ветке, которая отпочковывается от основной.

Рано или поздно ветка возвращается в main

Мелкие фиксы, над которыми вы работаете прямо в ветке:

Работа с GIT в команде

Здесь у вас скорее всего есть несколько основных веток для разных серверов TEST — test, UAT — uat, LIVE — main.

Сервера TEST и UAT служат для тестирования, первый — для тестирования разработчиком в условиях близких к продашн, а второй — для тестирования клиентом, чтобы не пересекаться с разработчиком. Например, клиент может создать сдесь какой то элемент контента, страницу и т.п., чтобы оценить как это будет работать, не опасаясь что-либо сломать или что это будет опубликовано.

Когда один из разработчиков приступает к работе над своей фичей (тикетом), он отпочковывает ветку от main. Обычно при этом ветке присваевается какое то наименование, связанное с используемой системой нумерации тикетов. По мере готовности ветка мерджится в test, uat.

Если фичу (тикет) решили задеплоить с прочими готовыми тикетами на LIVE, то обычно собирают все нужные тикеты в одну промежуточную ветку и мерджат уже её в main. Последний шаг зависит от того как устроен деплоймент. Если изменения main ветки приводят к автоматическому деплойменту, то использование промежуточной ветки неизбежно.

После деплоймента делают merge из main в текущие ветки, а также в test и uat. Ветки тикетов, которые ушли в продакшн, удаляются, т.к. в них работа больше не ведется. На дополнения и баг фиксы создаются новые тикеты, и, соотвественно, работа с ними будет вестись в других ветках.

В чем суть такой работы с ветками?
Гибкость деплоймента. В продакшн попадают только те тикеты, которые готовы и были одобрены для деплоймента. Т.к. все они стартовали с main, то они легко возвращяются обратно в main.

Коллизии, конечно могут быть, но они решаются на стадии слияния в промежуточной ветке перед деплойментом.

Написать комментарий

Мало букафф? Читайте есчо !

Как сравнить два произвольных файла не включенных в репозиторий средствами git diff

Июль 1, 2022 г.

Утилита Git diff может сравнивать не только изменения между ветками, но и вообще произвольные объекты файловой системы, которые даже не включены в репозиторий. ...

Читать

GIT может хранить пароли

Сентябрь 30, 2017 г.

Операции с удаленным частным репозиторием требуют ввода пароля. Git может сохранять введенные пароли, чтобы не вводить их при каждой операции. Как это сделать? Во-первых, git может запомнить введенный пароль временно. Это позволит выполнить ряд ...

Читать

 

Комментарии к «GIT workflow или как работать с проектом»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: