Я знаю, как настроить внешний инструмент для просмотра различий при вызове git difftool
.Однако, если я хочу видеть «дамп» всех изменений за всю историю файла в моем окне консоли, я хотел бы использовать git log -p <filename>
.У меня проблема с * .sql файлами в моей среде Windows.difftool
(используя мой настроенный инструмент) правильно обрабатывает файл Unicode, однако diff
этого не делает, что я думаю git log -p
использует под капотом.
Есть лиспособ заставить git diff
«работать» с файлами заданного / настроенного расширения, где я знаю, что на самом деле есть только символы ANSI, и отображать фактические текстовые изменения, выводимые на консоль (в моем случае Windows PowerShell, размещенный внутри консоли).
Примечание: я смотрел на этот вопрос / ответ о том, как заставить git diff распознавать UTF16, но я не смог заставить его работать (iconv и mktemp не присутствовали в моей системе).
Может быть, именно этот подход я должен продолжать изучать / экспериментировать с единственно возможным решением?Или мое единственное решение состоит в том, чтобы гарантировать, что файлы, в которых, как мне известно, присутствуют только символы ANSI, сохранены как ANSI - было бы обидно потерять всю историю, которая у меня есть в настоящее время для файлов * .sql (и любых других файлов, о которых я не знаю,сейчас они хранятся в формате Unicode - я недавно преобразованный пользователь git из Visual SourceSafe, поэтому мне еще не приходилось просматривать различия по всем моим типам файлов, которые я изменяю).