Я разрабатываю код с докером для Windows. У меня были некоторые проблемы с git и окончаниями строк/символическими ссылками. Git автоматически меняет окончания строк в разных системах. Но образ докера — это версия Ubuntu. Поэтому они должны быть одинаковыми. После настройки некоторых параметров в локальном репо я смог решить проблему.
git config core.symlinks true
git config core.autocrlf input
git reset --hard HEAD
Но сброс не перезагружает файлы. У них есть еще \r окончания строки. Только если я удалю все файлы и сделаю git stash, у них будет правильное окончание. Есть ли команда git для принудительной перезагрузки файла для всех файлов?
Это может кэшироваться в записях индекса до тех пор, пока файл не будет фактически изменен. Если git не видит изменений в файле, он ничего не делает. Вы должны как-то изменить файл. Например, очистив индекс:
git config core.symlinks true
git config core.autocrlf input
git read-tree --empty
git reset --hard HEAD