Git Поддерживать историю двух веток и быть в состоянии git push
У меня есть две ветви, которые выглядят так
o--o--A--B-C--D env1 (master), cherry-picking from env2
\
X--C--D env2
Различия между этими двумя ветвями зависят от настроек среды. Я хочу сохранить эти две ветви, потому что мне достаточно просто сделать git checkout для переключения между средами.
Теперь проблема в том, что git push разрешает env2, но отклоняет env1(master). Так как же другие люди получают последние коммиты (в основном вишнёвые из env2) от env1? PS Я не хочу терять историю ни в одной из веток
1 ответ
Решение
Если git push
отклоняет ваш коммит, есть веская причина! Прочитайте сообщение. Скорее всего, это потому, что кто-то еще подтолкнул master
с твоей последней покупки Отталкивание вашего штата отбросит чужую работу. Вам нужно получить их изменения, объединить ваши, а затем отправить результаты.
git fetch
git checkout master
git merge origin/master
git push origin master