Как я могу перенести ветку на удаленный компьютер после разрешения конфликтов перебазирования, не применяя принудительное нажатие? - PullRequest
0 голосов
/ 27 мая 2019

У меня есть ветка Git с открытым запросом в GitHub.Но я не могу объединить это, потому что GitHub жалуется, что есть некоторые конфликтующие файлы с последним master.Затем я перетаскиваю master и rebase master в свою локальную ветку, и во время rebase у меня возникают конфликты.Таким образом, я разрешил конфликты, и при попытке подтолкнуть ветку к источнику, мой толчок был отклонен, и ошибка говорит, что конец моей текущей ветки позади.Однако, когда я делаю принудительный толчок, он будет принят.В любом случае, я могу добиться этого без использования принудительного толчка?

Ответы [ 3 ]

1 голос
/ 27 мая 2019

Поскольку перебазирование изменяет историю, требуется какое-то принудительное нажатие.

К счастью, есть git push --force-with-lease, который все равно будет отклонять толчок, если в это время в ветку будет добавлен еще один коммит.

0 голосов
/ 27 мая 2019

Вставьте ваш код в новую ветку на GitHub.git push origin old-conflicts-branch:new-remote-branch

Затем вы можете продолжить работу с новой веткой.Старая ветка все еще там, так что вы можете удалить ее или сохранить в качестве резервной копии.

0 голосов
/ 27 мая 2019

Вместо того, чтобы перебазировать, вы должны слить, это не переписывает историю, и вы сможете нажать ее без force push. Если вы не хотите объединяться, то, к сожалению, я не знаю, как это сделать без force push.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...