Ваша проблема в том, что вы отправили коммит в ваш удаленный репозиторий, затем локально изменили его, сделали другой коммит и затем извлекли.
Поскольку удаленный репозиторий содержит старую «версию» вашего исправленного коммита,Ваш новый локальный коммит не является прямым потомком удаленной ветви.Это означает, что pull будет вызывать нетривиальное (т.е. не ускоренное перемещение вперед) слияние двух ветвей.Старый коммит на удаленной стороне и измененный коммит, на который вы влияете локально, изменяют одни и те же области одних и тех же файлов, поэтому у вас возникают конфликты.
Предполагая, что вы этого не сделали (или не хотите иметь)любые локальные изменения и что вы хотите, чтобы ваш последний реальный коммит («Поиск ошибок для поддержки медиа») был главой главной ветки, вы можете отменить попытку слияния следующим образом.
Я не на 100%уверен в вашей диаграмме, я считаю, что это означает, что вы пытаетесь выполнить слияние, но еще не сделали коммит слияния.Если это так, запустите это (предупреждаем, это отбрасывает локальные изменения):
git reset --hard
Если вы совершили слияние (то есть «-» на самом деле является сообщением фиксации), то вам нужно будет запустить git reset --hard HEAD^
вместо этого.
После этого ваш локальный мастер должен быть на старом коммите.
Если это успешно, для того, чтобы исправить ваш удаленный репозиторий, вам нужно будет force толчок.(Обычно не рекомендуется, но, поскольку вы говорите, что вы единственный, кто использует ваш репозиторий, все в порядке.)
Вам следует попробовать это:
git push -f origin master
Еслиэто не работает (например, если на пульте установлен denyNonFastForward
), вам придется прибегнуть к альтернативным средствам.Смотрите здесь , чтобы узнать, как обойти это.