@magiota
Веб-дев

Как правильно работать с веткой после git push --force?

При разработке у нас сложилась такая схема работы с git:
- локальная копия
- some-devel - рабочая ветка разработчика на сервере
- dev - общий ветка разработки
- master - препродакшн

для каждого разработчика выделен свой поддомен somedevel.dev.site куда автодеплоится его ветка
общая ветка разработки тоже автодеплоится
Также действует принцип: каждой задаче по ветке, после ее теста она вливается в общую

в свою ветку somedevel я нередко делаю git push --force что бы показать ту или иную ветку, или разные варианты
а в общую ветку разработки я вливаю уже аккуратные коммиты используя git rebase -i HEAD~

Вопрос в том как своем поддомене автодеплоем получать актуальный вариант ветки, если ветка нередко заливается git push --force

Если делать git pull то он пытается слить, что только мешает
Неужели git fetch; git checkout origin/somedevel ?
  • Вопрос задан
  • 2470 просмотров
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Неужели git fetch; git checkout origin/somedevel ?

ну или git fetch && git reset origin somedevel --hard

вы же понимаете что --force это... не хорошо.

0blLD7H.jpg

Попытайтесь чуть перестроить свой подход разработки так что бы не приходилось делать push --force (хотя в принципе плохого в этом ничего нет, при вашем флоу). Вы тип постоянно ветки друг дружки ребейзите?
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
CheatEx
@CheatEx
Инженер
Варианта два:
  1. Отслеживать теги по какому-то шаблону. Это проще и не даст интересных эфектов в случае человеческой ошибки.
  2. Сделайте отдельный репозитарий под такие бранчи. У разаботчиков соответственно в него пушится somedevel а не в главный. Главный репозитарий соответственно покрыть хуками которые не дают делать force. Сложно, но впишется в любой CI и не должно давать сюрпризов.
Ответ написан
Комментировать
rutaka_n
@rutaka_n
softwere engineer
вам не стоило делать автодеплой с веток, гораздо удобнее выло бы деплоить произвольную ветку с произвольным коммитом.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы