Подтвердить что ты не робот

Git - обрезать пробелы

Я случайно помещал пробелы в мой первоначальный коммит - он отображается красным в git diff --color. Каков наилучший способ избавиться от существующих пробелов и как я могу избежать этого снова?

Я не обязательно ищу встроенную команду git. Любая внешняя программа, доступная бесплатно на Ubuntu, также будет приветствоваться.

4b9b3361

Ответ 1

Чтобы обрезать конечные пробелы во всех файлах в текущем каталоге, используйте:

sed -i 's/[[:space:]]*$//' *

Чтобы предупредить о будущих ошибках пробела (как пробелы и перед вкладками), так и исправить ошибки в пробелах в патчах, добавьте следующий код в gitconfig файл:

[core]
    whitespace = trailing-space,space-before-tab
[apply]
    whitespace = fix

Ответ 2

core.whitespace указывает git на наличие определенных проблем с пробелами:

  • trailing-space предупреждает о пробеле в конце строки или в конце файла
  • space-before-tab предупреждает, когда перед вкладкой, используемой для отступов, есть пробел

apply.whitespace используется при применении патча. Он проверяет ошибки пробела (те, что указаны выше, в core.whitespace) и применяет патч после попытки их исправления (т.е. Удалить их).

Эти параметры входят в ~/.gitconfig - то есть файл .gitconfig в корень вашего домашнего каталога пользователя (обычно /home/user/.gitconfig в Linux, /Users/user/.gitconfig в Mac OS X, и я не знаю где в Windows, но я предполагаю, что где-то в C:\Documents and Settings\user).