На самом деле, просматривая исходный код spring-cloud-config, вы увидите:
if (!isClean(git, label)) {
this.logger.warn(
"The local repository is dirty or ahead of origin. Resetting"
+ " it to origin/" + label + ".");
resetHard(git, label, LOCAL_BRANCH_REF_PREFIX + label);
}
Решение
Так что он всегда будет пытаться сделать это и единственныйОбходной путь будет аналогичен этому ответу: Как в весеннем облачном конфиге использовать локальное свойство, переопределить удаленное свойство
Вам потребуется зафиксировать:
spring:
cloud:
config:
allowOverride: true
overrideNone: false
В свойствах конфигурацииты используешь.например: локальная / my-app.properties.Если у вас есть удаленное хранилище для хранения всех свойств, убедитесь, что оно объединено с master.
Затем вы можете изменить любое свойство приложения по своему усмотрению в application.yml / application.properties в приложении Spring Boot.,Файл удаленных свойств не будет переопределен.
Альтернатива
В качестве альтернативы, вы можете просто удалить файл конфигурации для среды, над которой вы работаете как среда разработки.,В моем примере выше вы можете просто удалить local / my-app.properties из удаленного репо и зафиксировать мастер.Так что он никогда не будет перезаписывать свойства локального приложения оттуда, потому что для cloud-config не существует файлов свойств.
Пожалуйста, прокомментируйте, если что-то неясно, чтобы я мог улучшить инструкцию.