Помочь настроить гит и помочь составить гайды (требования).

Задание закрыто
Статус рабочей области:Поиск исполнителя
Стоимость:Договорная
Срок выполнения:5 дней
Варианты оплаты:Планируется использовать Безопасную сделку
Дата публикации:2024-08-15 13:00
Обновлено:2024-08-15 13:05
Был на сайте:2024-11-15 12:01

Помочь настроить гит и помочь составить гайды (требования).

 
Задача

Необходимо проработать систему работы с проектом через гит. При условии что в проекте будут присутствовать несколько удаленных веток. Система ветвления должна предусматривать боевой сайт, репозиторий в гите, тестовый сайт и локальный репозиторий на компе разработчика. Как это вижу я. Ветка main отвечает за боевой сайт. Ветка release отвечает за репозиторий в гите где будут хранится все фичи для релиза. Ветка develop отвечает за тестовый сайт где будет разрабатываться и тестироваться новый функционал. Так же система должна предусматривать ветку hotfix для для быстрого исправления ошибок в продакшен-версиях. Разработчик создает локальный репозиторий из ветки develop (тестовый сайт), вносит изменения и отправляет их на сервер, там эти изменения проверяются, тестируются проводится код ревью. Если все ок, то изменения отправляются в ветку release (репозиторий в гите). В день релиза все изменения в ветке release отправляются в ветку main (боевой сайт). Я понимаю, что в силу того, что я слабо разбираюсь в вопросе, ...

Видеть полную информацию и оставлять заявки могут только авторизованные пользователи.
Исполнитель по этому заданию выбран.
Опыт разработки более 13лет. Работал с различными git(git flow) в крупных компаниях.
подберу методологию ветвления конкретно под ваш проект (для крупных команд/или для случая код как продукт) расскажу о подводных камнях. если совсем кратко под ваш проект. То вам подойдет стандартный git flow + семвер.
Ветка master это то что уже на боевом сайте. В нее никогда не коммитим. Только вливаем ветки релиза и хотфикса.
В develop как агрегатор фич.
Сначала стабилизируете ветку develop выпуская релиз. Это будет ветка release/1.0.0 тестируете.
После завершения тестирования при выявлении багов исправляете их в ветке релиза и коммитите затем закрываете релиз.
После закрытия у вас будет метка 1.0.0 к которой всегда можно откатится.
Если будут баги которые пропустили/не учли выпускается hotfix/1.0.1(от мастера) при его закрытии поставится метка(ставится автоматом) и код исправления бага попадет в стабильную версию(master) и в разрабатываемую(develop). Пример ведения тегов https://github.com/nullsesion/geo/tags Это предотвратит случайное повторное всплытие бага. Ветка develop это агрегатор фич. а ветки релиза это способ стабилизации/тестирование ветки при выкатке в прод. разрабатывать новый функционал лучше в ветках feature/task-126 которые делаются от develop при готовности вливается в develop.
если ветка develop сильно убегает вперед. то рекомендую в нее периодически вливать ветку develop. Это избавит вас от слишком частых решений конфликтов.
Или можно делать rebase. Но там свои подводные камни (на практике лишний гемор). имеет смысл только в паре кейсов. Например для поддержания ровной и красивой истории коммитов.
Это стандартная схема которая используется всеми компаниями. Под нее уже есть инструментарий и она часто используется для CI/CD
Святослав Кузин
Специализация: Программирование и IT
  • 2 000 руб5 дней
Вам нужно просто описание веток и требования к их использованию? Или какие-то вспомогательные скрипты/программы для разработчиков?
Takeda Daicha
Специализация: Программирование и IT
  • 10 руб5 дней
Привет, имею большой опыт в разработке скриптов, сайтов, парсеров и просто програм на python, одним словом пишу всо, также пишу приложения на Андроид, с удовольствием возьмусь за работу, сделаю всо в лучшем виде и в кратчайшие сроки, также помогу запустить и разобраться.

Мое портфолио: https://ochistka35.wixsite.com/daichasportfolio
Мой телеграм: https://t.me/daichitakeda

Оставлять заявки могут только авторизованные пользователи.