Вот что произошло:
У меня есть две удаленные ветки git: master и feature1. По какой-то причине я должен использовать git push --force для ветки feature1, но я не знал, когда я использую git push --force, он также нажимает ветвь master. Затем произошло бедствие, когда я переместил локальную ветвь master в удаленный репозиторий.
К счастью, моя локальная ветка не слишком далеко от пульта. В основном, мой удаленный master имеет два запроса на загрузку, объединенные перед моим локальным master.
Итак, моя проблема: могу ли я снова открыть запрос на извлечение и повторить? Я заметил, что есть версия фиксации для запроса слияния, поэтому я волнуюсь, если я просто делаю новый запрос на тяну, это что-то испортит? В идеале я просто хочу повторить слияние двух запросов.
Есть ли какой-то другой способ оправиться от этой катастрофы? Я узнал, что --force - действительно, очень плохой выбор.: (
Обновление, пример того, что произошло:
У меня есть следующие ветки:
master
feature1
origin/master
origin/feature1
Я объединяю два запроса на pull, используя GitHub Auto merge pull requests. Затем я не получил ветвь master на моей локальной машине. Таким образом, я думаю, что мой origin/master - это две версии за удаленным мастером.
Затем я случайно использовал git -f push, который перезаписал удаленную ветку, и теперь я потерял коммиты из запросов на перенос в удаленном репозитории.
Как я могу оправиться от него, не испортив историю других авторов?