ответ на который я так и не смог нагуглить.
Суть вопроса: допустим над проектом работает 2 программиста. Каждый работает в отдельной ветке f1 и f2 соответственно. Есть сервер с продом и 2 локальных репозитория соответственно. Оба сделали git pull на старте и начали работу. Допустим первый закончил работу и сделал merge своей ветки с мастером и сделал git push на прод сервер. Как должен поступить первый разраб в этой ситуации что бы избежать конфликта когда он закончит работу? Насколько я понимаю нужно как то синхронизировать локальный мастер с мастером прода(как?), а дальше уже пробовать делать merge с мастером на локальном репозитории и в случае успеха делать уже пуш на прод, или я что то не так понял?
Заранее спасибо)
git fetch origin master // Мержим мастер с веткой
Данная команда загрузит мастер с прода в локальный репозиторий?
Она его загрузит, но не смержит с локальным мастером
А куда он тогда его загрузит? Получается что мастер на локальном так и останется без изменений если мержа не было, ведь так? Тогда какой смысл этой команды, что это мне даст по итогу? Сори, вопросы возможно могут показаться глупыми, но пока не до конца понимаю как это все работает) с локальным вроде более менее разобрался а вот с удаленным уже сложнее для меня пока
В другую ветку Скорее всего под названием origin/master Хотя не уверен что это будет именно ветка
Но тогда фактически можно использовать же сразу pull, ведь мерж всеравно придется сделать. После мержа с локальным мастером, моя ветка f1 уже будет с учётом нового мастера или мне нужно будет мастер ещё замержить в мою ветку? Так делается вообще?)
Понял. Буду завтра экспериментировать дальше тогда. Спасибо)
пушить на прод - плохая практика, не надо так делать. либо на прод должна уезжать не мастер ветка, но лучше использовать другой вариант доставки кода
Т.е. пушить в репозиторий ветку на которой была задача, потом пулить ветку на прод и мержить уже там на мастер? Но тогда ведь конфликты придется решать уже на проде, а это вроде как тоже не очень. Как вообще принято делать?
У тебя в качестве гит сервера что? Гитлаб, гитхаб или ещё что-то? Или просто прод сервер с кодом? Или просто серевер на котором репа лежит?
В данный момент на гитхабе репозиторий. Пока на нем тренируюсь)
Ветку пушишь в гитхаб, создаёшь пр, пр мерджишь в мастер, в гитхаб экшнс настраиваешь деплой на прод
Понял. Спасибо. Буду пробовать)
Обсуждают сегодня