เมื่อวานตอนเย็นแล้ว  เพื่อนที่ทำงานคนหนึ่ง ผู้ไม่ค่อยศรัทธาใน git ได้กล่าวขึ้นมาว่า “git มันมีบักบนวินโดว มันจับไม่ได้ว่าไฟล์ตัวเล็กตัวใหญ่เปลี่ยนไป ซึ่งมันทำให้เกิดบักขนาดมหึมา”  ผมโพล่งขึ้นมาทันทีด้วยความมั่นใจว่า มันเป็นไปไม่ได้หรอก มันต้องรู้ทุกๆการเปลี่ยนแปลงสิ  มันไม่เม้คเซ้นต์

คือผมเถียงขึ้นมาด้วยความมั่นใจเกินล้าน  จากนั้นมันก็ต้องทดสอบว่าจริงหรือเปล่า  ก็ได้ลองทดสอบเปลี่ยนชื่อไฟล์จากตัวเล็กเป็นตัวใหญ่ดู  เย็ดเป็ด git มันจับไม่ได้จริงๆด้วยว่ามีการเปลี่ยนแปลง
ผมลองทดสอบเปลี่ยนชื่อไฟล์จาก init.php เป็น Init.php ในโปรเจ็กผม

แล้วเปิด source tree ประจำตัวเพื่อดูว่ามันจะพบความเปลี่ยนแปลงมั้ย ไม่เลย เงียบฉี่

ท่านเคยมั้ย ที่แบบเถียงด้วยความมั่นใจมาก  แต่พอทดสอบ หรือหาข้อมูลเพิ่มเติม กลับปรากฎอย่างที่เขาพูดจริงๆ อือ… ผมรู้สึกอย่างท่านเคยรู้สึกนั่นแหละ

แต่ลึกๆแล้ว ผมไม่เชื่อว่ามันจะเป็นบัก เพราะมันไม่เม้คเซ้นต์ อย่างที่ผมกล่าวไปตั้งแต่ต้น  มันต้องมีคนเคยเปลี่ยนชื่อไฟล์บ้างละวะ  และมันจะต้องเคยเกิดปัญหามาบ้าง

หลังจากผมหาข้อมูลก็ไปเจอกับบทความนี้  http://blog.avisi.nl/2013/03/27/stop-ignoring-my-capitals-git/ เขาบอกมันกำหนดค่า config ได้ให้จับการเปลี่ยนแปลงของชื่อไฟล์จากตัวเล็กเป็นตัวใหญ่หรือจากตัวใหญ่เป็นตัวเล็ก

ผมว่าแล้ว มันต้องได้สิ  เทวดาบอกผม

เปิด source tree ไปที่ Repository Settings…

คลิก Edit Config files…

เลือกโปรแกรมประจำกายเปิดไฟล์ config

เปลี่ยน ignorecase จาก true เป็น false

ลองเปลี่ยนชื่อไฟล์จากตัวเล็กเป็นตัวใหญ่ใหม่ นั่นไง

มันต้องได้ดิวะ