git diff --ignore-space-change를 기본값으로 만드는 방법


110

별칭을 설정할 수도 있지만 구성 파일의 옵션으로 이것을 설정할 수 있어야하는 것 같습니다.

나는 내가 --ignore-space-change적용하거나 다른 것을 할 때가 아니라 diff를 할 때만 원합니다 . 실제 변경 사항이없는 외부 +/- 라인으로 어지럽히 지 않음으로써 diff를 이해하기 쉽게 만들려고합니다.


2
정답을 변경 하시겠습니까? :)
igorsantos07

1
지금 바로 거기 git diff -w에 대한 바로 가기입니다 --ignore-all-space: 라인을 비교할 때 공백을 무시가. 한 줄에 공백이 있고 다른 줄에는 공백이없는 경우에도 차이가 무시됩니다.
João Pimentel Ferreira

답변:


22

Git Config 매뉴얼에 따르면 그러한 옵션이 없습니다. 유일한 옵션은 별칭을 만드는 것입니다.

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


저도 그 페이지를 읽은 것으로 생각했습니다. 나는 누군가가 문서화되지 않은 방법을 알고 있기를 바라고 있었다 .... 오 잘.
boatcoder 2011 년

@Dogbert-git add -p <file_name>, 어떤 제안을 수행 할 때만 동일한 문제가 있습니다.
Guy Avraham

@ JoãoPimentelFerreira 기본값이 아닙니다.
DylanYoung


99

git 별칭 또는 bash 별칭을 사용할 수 있습니다. 사용하면 쉘 가능한 OS를 사용하는 경우.

  1. git alias :이 명령을 실행하여 별칭을 추가합니다.

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

    --ignore-space-change can be abbreviated to -w
    다음을 사용하여 별칭을 적용하려면 git dfw

  2. bash 별칭 :이 명령을 실행하여 bash 별칭을 추가합니다.

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

    새 터미널을 열고 직접 실행할 수 있습니다 gitdfw.


8
이것은 '이 URL로 이동'보다는 예제에서 실제로 유용하기 때문에 허용되는 대답이어야합니다.
DrStrangepork 2015

7
에 따르면 현재 자식 문서 , -b과 동일합니다 --ignore-space-change. Linux diff명령 과 일치 -w하며 --ignore-all-space. 예를 들어 텍스트 a b c는 옵션 abc과 동일하게 간주 되기 때문에 중요한 차이점입니다 -w. 코드에서 이것은 당신이 원하는 것이 아닐 것 같으므로 -b더 나은 옵션입니다.
리차드 와이즈만


10

편집 : 나는 어리 석고 귀하의 요청을 철저히 읽지 않았습니다.

비슷한 것을 달성하는 방법은 다음과 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/및 APPEND를

[apply]
   whitespace = nowarn

또한 공백 만 변경하는 것을 커밋하도록 허용하지 않을 수도 있지만 일부 플래그로이를 무시할 수 있습니다.


1
OP는 할 때 기본값을 설정하는 방법을 찾고있었습니다 git diff. 이것은 apply.
denishaskin 2014-06-13

10

오래된 질문 (2011),하지만 지금은 바로 가기 거기에 git diff -w의미 --ignore-all-space

줄을 비교할 때 공백을 무시하십시오. 한 줄에 공백이 있고 다른 줄에는 공백이없는 경우에도 차이가 무시됩니다.


2

이것이 옵션으로 가능하다면 좋을 것입니다. 그러나 별칭은 상당히 잘 작동합니다. 내 .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를 얻었습니다)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.