понедельник, 6 августа 2012 г.

PhpStorm PHP IDE from JetBrains проблема с кодировками UTF-8 и WIN-1251

Если файлы в репозитории стали в битой кодировке похожей на UTF-8 то можно настроить PhpStorm или Git.

В настройках PhpStorm есть опция окончания строки, а также её проверки перед коммитом (он может сам привести всё к нужному виду).
Settings->Project Settings->Code Style->General->Line separator (for new files)
Settings->Project Settings->Version Control->Git->Line Separators Conversion


Проблема в том, что phpStorm при commit проекта из git сохраняет файлы с end line Dos/Window вместо Unix, соответственно bash файлы перестали нормально работать. 

1. В PhpStorm при checkout всегда использует те окончания строк, какие изначально были в файле (за исключением опции менять их при commit).
2. Если вы хотите, чтобы у вас сохранились окончания при checkout, поставьте core.autocrlf = false или input.

3. Если при  checkout из PhpStorm и из консоли у вас получаются разные результаты, значит, в настройках PhpStorm у вас прописан путь к другой инсталляции Гита (с другими настройками core.autocrlf). Т.к. при Checkout from Git PhpStorm просто вызывает git clone.

4. Настройки git
В файле .gitconfig
[user]
    name = name
    email = your@email.com
[gui]
[core]
    autocrlf = false
    safecrlf = true

Программа TortoiseGit — отрабатывает нормально в Unix UTF-8

В PhpStorm 4.0.3 перед заменой символа, IDE стала предлагать, делать ли ей это или нет. Поддержка пишет, что необходимость по сохранению названий файлов на русском в Git стоит у них в задачах.


Ещё стоит почитать статьи:
  1. Customizing Git - Configuration - Formatting and Whitespace
  2. Использование Git
  3. Особенности настройки git под windows
  4. Использование Git для разработки в Etersoft

Комментариев нет:

Отправить комментарий