При установке по умолчанию CygWin не поддерживает работу с русским языком.
И если попробовать что-то написать в русской раскладке, то получим что-то вроде:
$ фывапр
На многих форумах пишут что для версий меньше 1.7 проблема актуальна, но я сам не проверял. Для сборки 1.5.25-15 существует
специальный патч.
Который, судя по всему, был включен в основную ветку.
Итак, чтобы включить поддержку кодировки UTF-8 необходимо проделать следующие шаги:
1. Если ставите CygWin заново, то отметьте в инсталляторе пакеты интернационализации
libintl, libiconv2. Либо просто убедитесь в их наличии при уже установленном CygWin
2. Добавьте или приведите к следующему виду строки в файле
/etc/inputrc или
~/.inputrc:
set input-meta on
set meta-flag on
set convert-meta off
set output-meta on
3. Добавьте или приведите к следующему виду строку в файле
/etc/profile или
~/.profile:
export LANG=ru_RU.UTF-8
Или же можно создать отдельный файлик локализации в папке
/etc/profile.d/. Пусть это будет, например
utf-8.sh.
А теперь запускаем CygWin и видим нормальную поддержку русского языка.
В частности, теперь нормально работает
git, особенно
git svn rebase.
Для некоторых задач удобно использовать GitExtensions. Это довольно неплохая утилита, аналогичная TortoiseGit, но поддерживает совместную работу с Visual Studio 2005, 2008.
Первая проблема - утилита требует файл
git.cmd, которого в CygWin нет. Берем его из MSysGit и кладем в
c:\cygwin\cmd.
Вторая, в том, что
git.cmd не учитывает свойства среды, которые мы настроили ранее, поэтому я немного подправил его до такого вида:
@echo off
set PLINK_PROTOCOL=ssh
setlocal
for /F "delims=" %%I in ("%~dp0") do @set git_install_root=%%~fI
rem set git_install_root=C:\cygwin
set path=%git_install_root%\bin;%git_install_root%\cmd;%PATH%
if "%1"=="gui" @goto gui
:default
for /f "tokens=* usebackq" %%i in (`@cygpath.exe %CD%`) do (
set HOME=%%i
)
bash.exe -lc 'git.sh --git-dir=%HOME%/.git %*'
exit /b %ErrorLevel%
:gui
if "%2"=="citool" @goto default
start wish.exe "%git_install_root%\libexec\git-core\git-gui" -- %2 %3 %4 %5 %6 %7 %8 %9
И вроде бы все достаточно очевидно, но тем не менее, примерно за один день в режиме ленивого гугления, мне не удалось найти подобной статейки на русском.
Надеюсь информация окажется кому-нибудь полезной.