Похоже, что ваша ветвь функций находится за вашей основной веткой.Попробуйте перенести основную ветвь в удаленный репозиторий, перенести основную ветвь на локальный компьютер и создать новую функциональную ветвь из обновленной основной ветки.Когда вы закончите работу с вашей функцией, вы сможете развернуть новую ветвь функции и перетащить ее в мастер без конфликтов слияния.
Имейте в виду, что вам придется повторять описанную выше процедуру каждый раз, когда вы обновляете основную ветку.
Краткосрочное решение вашего последнего вопроса,
«Есть ли способ избежать этого и просто перезаписать их?»
- установить параметр «их» в стратегии рекурсивного слияния (слияние по умолчанию)стратегии) при извлечении из ветки компонентов, например: git pull -Xtheirs origin feature-branch
.
Однако , поскольку вы упомянули, что это тестовый сервер, на котором вы хотите протестировать свои изменения, вы можете захотетьрассмотрите возможность проверки ветки вашей функции, как упомянуто @ eftshift0, и зарезервируйте основную ветку для функций, которые вы уже протестировали.Чтобы оформить свою ветвь функций, вы можете использовать git fetch && git checkout origin/feature-branch
.