คุณอาจต้องตั้งค่าการตั้งค่า color.diff.whitespace เช่น:
git config color.diff.whitespace "red reverse"
(ฉันสมมติว่าคุณมีcolor.diff
หรือcolor.ui
ตั้งค่าไว้auto
ตั้งแต่ที่คุณบอกว่าคุณเห็นแพตช์สีจากgit diff
นั้น)
หากคุณต้องการปรับประเภทของข้อผิดพลาดของช่องว่างที่เน้นด้วยสีแดงคุณสามารถเปลี่ยนcore.whitespace
ได้ แต่blank-at-eol
จะเปิดใช้งานตามค่าเริ่มต้นดังนั้นคุณอาจไม่จำเป็นต้องเปลี่ยนสิ่งนั้นสำหรับตัวอย่างที่คุณพูดถึง
แหล่งที่มาของความสับสนที่เป็นไปได้คือในผลลัพธ์ของgit diff
ข้อผิดพลาดของช่องว่างจะถูกเน้นเฉพาะในบรรทัดที่มีการแนะนำไม่ใช่ที่ถูกลบออก ( อัปเดต:ตามที่ Paul Whittaker ชี้ให้เห็นในคำตอบของเขาซึ่งคุณควรโหวตขึ้น :) คุณจะเห็นสิ่งเหล่านี้ได้โดยการย้อนกลับไปสู่ความแตกต่างด้วยgit diff -R
)
คุณสามารถหาเอกสารเพิ่มเติมเกี่ยวกับตัวเลือกการกำหนดค่าเหล่านี้ได้ในหน้าgit config man
หากคุณไม่ต้องการใช้-R
kludge คุณสามารถใช้ตัวเลือกไฮไลต์ข้อผิดพลาด WhiteSpace ได้จากหน้าdiff ต่างๆ
--ws ข้อผิดพลาดไฮไลท์ =
เน้นข้อผิดพลาดของช่องว่างบนบรรทัดที่ระบุโดยในสีที่ระบุโดย color.diff.whitespace เป็นรายการที่คั่นด้วยเครื่องหมายจุลภาคของบริบทเก่าใหม่ เมื่อไม่ได้รับตัวเลือกนี้จะมีการเน้นเฉพาะข้อผิดพลาดของช่องว่างในบรรทัดใหม่ เช่น --ws-error-highlight = ใหม่ไฮไลท์เก่าเน้นข้อผิดพลาดของช่องว่างทั้งบนบรรทัดที่ถูกลบและเพิ่ม ทั้งหมดสามารถใช้เป็นทางลัดสำหรับเก่าใหม่บริบท
git diff --ws-error-highlight=new,old <file>
หรือ
git diff --ws-error-highlight=all <file>
ฉันไม่ทราบวิธีการเปิดใช้งานอย่างถาวรและเก็บสิ่งนี้ไว้ในการตั้งค่านอกเหนือจากการใช้นามแฝง:
git config alias.df 'diff --ws-error-highlight=all'
ตอนนี้คุณสามารถใช้:
git df <file>
เพื่อดูการเปลี่ยนแปลงในสีแดง
โปรดทราบว่าด้วย Git 2.11 (Q4 2016)นามแฝงนี้อาจถูกแทนที่ด้วย:
git config diff.wsErrorHighlight all
ดูเอกสารบนgit diff
และบนgit config