ฉันเป็นผู้ดูแลโครงการ TXR แต่เพียงผู้เดียวและได้เก็บรายละเอียด ChangeLog ไว้ตั้งแต่ต้นในโครงการ นี่คือใกล้กับ 11,000 บรรทัดยาวและเติบโต:
http://www.kylheku.com/cgit/txr/tree/ChangeLog
(ข้อความคอมมิชชันใน repo เป็นเพียงสำเนาของสิ่งที่เกิดขึ้นใน ChangeLog)
[2016 แก้ไข: ตั้งแต่กลางปี 2558 ฉันไม่ได้ดูแลไฟล์ ChangeLog อีกต่อไป อย่างไรก็ตามข้อความคอมมิทจะถูกเขียนในรูปแบบที่สอดคล้องกับ Git และ ChangeLog ในเวลาเดียวกัน มีรายละเอียดในระดับเดียวกันในลักษณะที่ไม่ทำให้เกิดปัญหาการรวม ไฟล์ ChangeLog สามารถสร้างขึ้นใหม่โดยอัตโนมัติจากความคิดเห็นเหล่านี้]
ใช่มากกว่าหนึ่งครั้งฉันกลับไปที่ข้อความคอมมิชชันเก่าที่เกี่ยวข้องกับการเปลี่ยนแปลงซึ่งทำลายบางสิ่งบางอย่าง (เปิดเผยด้วยความช่วยเหลือของgit bisect
) ข้อความนี้ช่วยให้ฉันเข้าใจว่ากำลังทำอะไรอยู่
ใน ChangeLog คุณสามารถบอกได้เมื่อมีการแนะนำฟังก์ชั่นประเภทมาโครหรือตัวแปรส่วนกลางและเมื่อสัมผัสกับการเปลี่ยนแปลงในภายหลัง
แต่เหตุผลหลักสำหรับการเขียนรายละเอียดกระทำเช่นข้อความเหล่านี้เมื่อทำงานด้วยตัวเองคือ: คุณพบข้อบกพร่องเมื่อทำเช่นนี้
ในการเขียนข้อความการส่งข้อความโดยละเอียดมีประโยชน์คล้าย ๆ กับการตรวจสอบรหัสการส่งข้อความโต้ตอบของคุณโดยบุคคลอื่น ค่าในการตรวจสอบการกระทำไม่มากจนมีคนกำลังตรวจสอบรหัสของคุณ แต่คุณต้องอธิบายการเปลี่ยนแปลงของคุณกับนักพัฒนารายอื่น
เมื่อคุณพยายามอธิบายสิ่งต่าง ๆ บางครั้งคุณพบว่าสิ่งเหล่านั้นไม่สมเหตุสมผล
อีกเหตุผลหนึ่งที่: คุณสามารถจับตัวเองทำให้มีการเปลี่ยนแปลงที่ไร้ประโยชน์ โดยการเขียนความเห็นอย่างละเอียดคุณจะได้รับมุมมองระดับสูงของสิ่งที่คุณกำลังทำและบางครั้งคุณต้องเผชิญกับความจริงที่ว่ามันไม่ใช่การเปลี่ยนแปลงที่ดี
ผมได้ทำบางครั้งการเปลี่ยนแปลงเมื่ออยู่ในช่วงกลางของการเขียนรายการ ChangeLog ฉันตระหนักว่านี่คือจะเป็นgit reset --hard
(โยนออกไปการเปลี่ยนแปลงที่ไร้ประโยชน์เหล่านี้) git commit -a
มากกว่า