Как сделать git diff --ignore-space-изменить значение по умолчанию

Возможно, я мог бы настроить псевдоним, но, кажется, я должен был бы установить это в качестве опции в файле конфигурации, только я все равно не вижу, как это сделать.

Я только хочу --ignore-space-change когда я делаю diff, а не когда я делаю применить или что-то еще. Я пытаюсь облегчить понимание различий, не загромождая их посторонними + / - строками, в которых нет реальных изменений.

Ответ 1

В соответствии с инструкцией Git Config нет такой опции. Ваш единственный вариант - сделать псевдоним.

http://git-scm.com/docs/git-config

Ответ 2

Вы можете использовать git псевдоним или bash псевдоним, если вы используете оболочку, доступную для ОС.

  • git alias: запустите эту команду, чтобы добавить псевдоним:

    git config --global alias.dfw 'diff --ignore-space-change'

    --ignore-space-change can be abbreviated to -w
    для применения псевдонима, используя: git dfw

  • bash псевдоним. Запустите эту команду, чтобы добавить псевдоним bash:

    echo "alias gitdfw='git diff --ignore-space-change'">>~/.profile

    Откройте новый терминал, и вы можете напрямую запустить gitdfw для достижения того же самого.

Ответ 4

ИЗМЕНИТЬ: Я ЛЮБЛЮ И НЕ ПРОЧИТАЛ ВАШ ЗАПРОС ЧЕРЕЗ

Способ достижения чего-то подобного, от man git-config:

 apply.whitespace
       Tells git apply how to handle whitespaces, in the same way
       as the --whitespace option. See git-apply(1).

Итак, откройте свои ~/.gitconfig или ./.git/config/ и добавьте

[apply]
   whitespace = nowarn

Это может также не позволить вам совершать что-то, что только изменяет пробелы, но я уверен, что вы можете отменить это с помощью некоторых флагов.

Ответ 5

было бы здорово, если бы это было возможно с опцией. но псевдоним работает достаточно хорошо. вот соответствующие строки из моего .gitconfig:

[diff]
    tool = mydiff
[difftool "mydiff"]
    cmd = "colordiff -NuBbwi \"$LOCAL\" \"$REMOTE\" | less -R"
[difftool]
    prompt = false
[alias]
    dt = difftool

это предполагает использование colordiff, который я рекомендую, давая вам почти точную копию того, что будет отображаться git diff, с двумя отличиями:

  • --- строка в colordiff окрашена по-разному, чем та же строка в git diff (очень незначительная проблема)
  • каждый файл отображается по одному (раздражающая проблема - кто-нибудь знает исправление?)

здесь my/etc/colordiffrc:

plain=off
newtext=green
oldtext=red
diffstuff=cyan
cvsstuff=red

Mac OS X 10.9.2, git версия 1.8.5.2 (Apple Git -48)

(colordiff был получен из brew)

Ответ 6

Старый вопрос (2011), но теперь есть ярлык git diff -w который обозначает --ignore-all-space

Игнорировать пробелы при сравнении строк. Это игнорирует различия, даже если в одной строке есть пробелы, а в другой нет ни одной.