Git: преобразовать возврат каретки \ r в новую строку \ n с помощью git hook? - PullRequest
8 голосов
/ 05 октября 2010

Товарищ по кодированию использует компьютер Windows, который отправляет возврат каретки везде в нашем источнике.

Есть ли способ написать git hook, который преобразует все \r\n в \n?

Примечание Раньше я не пользовался git-хуками, поэтому небольшое дополнительное удержание может иметь большое значение:)

Ответы [ 2 ]

10 голосов
/ 05 октября 2010

Самое простое - это установить core.autocrlf в false на стороне Windows.
(таким образом Git не будет выполнять никаких преобразований и сохранит eol нетронутым).

Со стороны Unix значение core.autocrlf, установленное в значение true, может помочь восстановить правильное значение.
Как упоминает mathepic в комментариях, и как я описал вТАК ответ , поскольку Git1.7.2, вы можете использовать core.eol (на родной), оставляя core.autocrlf на ложном.

В противном случае вы можете использовать текст драйвер или драйвер фильтра с gitattributes файлами .
Нет необходимости в хуках.

1 голос
/ 05 октября 2010

Если они используют TortoiseGit, есть возможность сделать это для вас, в Git-> Config-> Auto CRLF convert.

...