Git diff -w僅在行的開頭和結尾忽略空格

我喜歡使用git diff -w來忽略空白差別。 可是,我只是注意到它忽略了線條中間的空白差別。 我怎麼才能忽略行開頭(^)或結尾($)的空白差別? git


#1樓

對於行尾使用: spa

git diff --ignore-space-at-eol

而不是你目前使用的是什麼: code

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

若是你想要一個內置的解決方案,那麼你就不幸了! get

可是,若是你不介意弄髒手,那裏有一個至關古老的補丁浮出某處,增長了對「--ignore-space-at-sol」的支持。 it


#2樓

這是一個老問題,但仍然常常被查看/須要。 我想發帖告訴像我這樣的讀者,OP問題中提到的空白與Regex的定義同樣,包括換行符,製表符和空格字符--Git要求你明確。 在這裏查看一些選項: https//git-scm.com/book/en/v2/Customizing-Git-Git-Configuration io

如上所述, git diff -bgit diff --ignore-space-change將忽略行尾的空格。 若是您但願將該設置做爲默認行爲,則如下行將該意圖添加到.gitconfig文件中,所以它將始終忽略行結束處的空格: bug

git config --global core.whitespace trailing-space 協議

在個人狀況下,我發現了這個問題,由於我有興趣忽略「回車空白差別」,因此我須要這個: di

git diff --ignore-cr-at-eolgit config --global core.whitespace cr-at-eol這裏文件

您也能夠將其做爲默認只爲回購協議經過省略--global參數,併爲回購設置文件檢查。 對於我遇到的CR問題,若是.gitconfig文件的[core]部分中的warncrlf或autocrlf = true,它會在簽入後消失。

相關文章
相關標籤/搜索