Programming

Git diff -w는 줄의 시작과 끝에서만 공백을 무시합니다.

procodes 2020. 3. 3. 23:07
반응형

Git diff -w는 줄의 시작과 끝에서만 공백을 무시합니다.


git diff -w공백 차이를 무시하는 데 사용 하고 싶습니다 . 그러나 방금 줄 중간의 공백조차 무시한다는 것을 알았습니다. 줄의 시작 (^) 또는 끝 ($)에서 발생하는 공백 차이 만 어떻게 무시할 수 있습니까?


라인 사용의 경우 :

git diff --ignore-space-at-eol

현재 무엇을 사용하고 있습니까?

git diff -w (--ignore-all-space)

라인 시작을 위해 ... 내장 솔루션을 원한다면 운이 없습니다.

그러나 손이 더러워지는 것이 마음에 들지 않으면 "--ignore-space-at-sol"에 대한 지원을 추가하는 어딘가에 오래된 패치가 떠 있습니다.


이것은 오래된 질문이지만 여전히 정기적으로 보거나 필요합니다. OP의 질문에 언급 된 공백 바꿈, 탭 및 공백 문자를 포함하는 Regex의 정의와 동일 하지 않다는 것을 독자에게 경고하고 싶습니다 .Git은 명시 적으로 요구합니다. 여기에 몇 가지 옵션이 있습니다 : https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration

으로 진술, git diff -b또는 git diff --ignore-space-change라인 끝에서 공백을 무시합니다. 해당 설정을 기본 동작으로 설정하려면 다음 행에서 해당 의도를 .gitconfig 파일에 추가하므로 행 끝의 공백은 항상 무시됩니다.

git config --global core.whitespace trailing-space

제 경우에는 "캐리지 리턴 공백 ​​차이"를 무시하는 데 관심이 있었기 때문에이 질문을 찾았습니다.

git diff --ignore-cr-at-eol또는 git config --global core.whitespace cr-at-eol에서 여기 .

--global 매개 변수를 생략하고 해당 리포지토리의 설정 파일을 체크인하여 해당 리포지토리 의 기본값 설정할 수도 있습니다 . 내가 직면 한 CR 문제의 경우, .gitconfig 파일의 [core] 섹션에서 warncrlf 또는 autocrlf = true 인 경우 체크인 후 사라집니다.

참고 URL : https://stackoverflow.com/questions/4350678/git-diff-w-ignore-whitespace-only-at-start-end-of-lines



반응형