Git GUI в Windows не распознает файл SQL (.sql) как текст

Извините, если на этот вопрос уже был дан ответ, но я пока не смог найти ответ :(

Я использую SQL Server Management Studio 2008 в Windows 7.

Я щелкаю правой кнопкой мыши любой sproc, функцию или объект и выбираю «Изменить».
Я нажимаю «Сохранить» и сохраняю файл в папку, которая является репозиторием git на моем локальном жестком диске.
Я сохраняю файл как Предлагаемый тип = "Файл запроса Microsoft SQL Server (.sql)
Итак, теперь у меня есть файл, например, "MySproc.sql", который отлично открывается в студии управления SQL, однако, когда я использую Git GUI и выполняю "сканирование", чтобы найти измененные файлы, он представляет мой новый «MySPrc.sql» как «* двоичный файл (без отображения содержимого)» вместо простого текста.

Я попытался открыть файл в NOtepad и пересохранить его, но это не помогло.

Любая помощь будет принята с благодарностью.


person Andre    schedule 05.05.2011    source источник
comment
Возможный дубликат (без ответа): stackoverflow.com/questions/3915072/   -  person Chris Shaffer    schedule 05.05.2011


Ответы (3)


Просто предположение, но я бы сказал, что ваш файл .sql - это UTF-16; Если бы вы сохранили его как UTF-8 или ASCII, я думаю, git gui будет работать с ним правильно.

person Chris Shaffer    schedule 05.05.2011
comment
Когда я открываю любой файл в Блокноте и сохраняю его, он показывает кодировку файла как ANSI... простите за отсутствие знаний, но как я могу увидеть кодировку файла? - person Andre; 05.05.2011
comment
лучший вариант - использовать приличный текстовый редактор. Notepad++ и PSPAD — это два бесплатных варианта, которые расскажут вам все, что вам нужно знать. - person Tao; 05.05.2011
comment
@Tao, @Andre: SQL Management Studio поддерживает сохранение с использованием разных кодировок. Когда вы делаете «Сохранить как», щелкните стрелку вниз на кнопке «Сохранить» и выберите «Сохранить с кодировкой...». - person Jon Seigel; 08.05.2011
comment
@Andre: Имейте в виду, что если исходный файл в репозитории имеет кодировку UTF-16, то новая версия в кодировке UTF-8 или ASCII не позволит выполнить сравнение. Если это проблема, лучше всего использовать для сравнения другой инструмент, который поддерживает Unicode. - person Chris Shaffer; 09.05.2011
comment
В SQL Management Studio 2012 параметр «Файл» -> «Дополнительные параметры сохранения». - person Danny Frencham; 04.06.2013

Это раздражает, но я меняю расширение на .txt перед загрузкой изменений. Я думаю, что расширение .sql сбивает с толку git.

P.S. Вот ценный совет, если вы используете SQL Server Management Studio. Щелкните правой кнопкой мыши вашу базу данных. Выберите «Задачи» во всплывающем меню, а затем «Создать сценарии». Это приводит вас к мастеру, где вы можете создавать сценарии для всего в вашей базе данных. Вы можете вывести все скрипты в одну папку. Затем используйте программу, например oscar's renamer, чтобы изменить расширение на .txt перед фиксацией изменений. . Это отличный способ добавить систему управления версиями (хотя и вручную) в вашу базу данных.

person paulstamant    schedule 19.05.2012

Вы также можете использовать powershell для преобразования файла в ASCII.

Get-Content Filename.sql | Out-File NewFileName.sql -Encoding ascii
person Mike Smith    schedule 07.11.2017