我有時在git repo中有很長的代碼行(例如一個json配置文件),並且git diff
會像下面那樣產生輸出。如何配置git-diff使長行不環繞?
在EC2實例,我git diff
不換行的內容到下一行,產生以下輸出(I可以使用左/右鍵來導航),其我個人偏好。
任何一個人知道如何配置的git-diff
從一個行爲改變到另一個?
我有時在git repo中有很長的代碼行(例如一個json配置文件),並且git diff
會像下面那樣產生輸出。如何配置git-diff使長行不環繞?
在EC2實例,我git diff
不換行的內容到下一行,產生以下輸出(I可以使用左/右鍵來導航),其我個人偏好。
任何一個人知道如何配置的git-diff
從一個行爲改變到另一個?
這是您的終端或尋呼機程序包裝線,而不是git diff
。嘗試將git diff
的輸出重定向到一個文件中,並使用允許控制包裝的編輯器打開它 - 您將看到這些線條並未實際包裹。
你可以試試這個:
git diff|cut -c -$COLUMNS
不過請注意,這將禁用顏色和尋呼。
將'--color'傳遞給git diff將再次強制顏色,但是這些行是在實際到達'$ COLUMNS'之前明顯縮短了,每個ANSI顏色字符在行中都有一個字符。 –
感謝上面的torek的內聯響應。基於此,我意識到我可以通過git diff | less -S
來實現我想要的。它比cut -c -$COLUMNS
解決方案更好,因爲它不會丟失任何上下文(我仍然可以使用左右按鈕查看所有差異)。
如果您使用'less'作爲您的尋呼機,請設置'-S'選項。 (我喜歡認爲S代表'側向滾動'。)Git中的默認設置很複雜:請參閱http://stackoverflow.com/a/18781512/1256452。請注意,設置'S'可能會干擾'F':http://unix.stackexchange.com/q/231427/162084 – torek