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


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

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

5 94

5 ответов:

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

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

вы могли бы использовать git alias или bash alias если вы используете оболочку,-доступна ОС.

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

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

    --ignore-space-change can be abbreviated to -w
    чтобы применить псевдоним с помощью:git dfw

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

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

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

Я бы согласился с Dogbert это!--5--> что, вероятно, лучше всего просто использовать псевдоним, но другой вариант-установить настройки diff.external к сценарию-оболочке, который вызывает diff С -b.

EDIT: Я ДУРАК И НЕ ПРОЧИТАЛ ВАШ ЗАПРОС ДОСКОНАЛЬНО

способ добиться чего-то подобного, от 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

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

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

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

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

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

вот мой /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)