สิ่งนี้มีอยู่จริง แต่เป็นคุณลักษณะของgit log
:
git log -p [--follow] [-1] <path>
โปรดทราบว่า-p
สามารถใช้เพื่อแสดงอินไลน์ต่างจากการคอมมิทเดียว:
git log -p -1 <commit>
ตัวเลือกที่ใช้:
-p
(ยัง-u
หรือ--patch
) ถูกซ่อน deeeeeeeep ในหน้าคนและเป็นจริงสำหรับตัวเลือกการแสดงgit-log
git-diff
เมื่อใช้กับlog
มันแสดงให้เห็นแพทช์ที่จะถูกสร้างขึ้นสำหรับแต่ละกระทำพร้อมกับกระทำข้อมูลและหนัง<path>
กระทำที่ไม่ได้สัมผัสที่ระบุไว้ (พฤติกรรมนี้ได้อธิบายไว้ในย่อหน้า--full-diff
ที่ทำให้เกิดความแตกต่างของการกระทำแต่ละรายการที่จะแสดง)
-1
แสดงให้เห็นว่าเป็นเพียงการเปลี่ยนแปลงล่าสุดไปยังแฟ้มที่ระบุ ( -n 1
สามารถนำมาใช้แทน-1
); มิฉะนั้นส่วนต่างที่ไม่ใช่ศูนย์ของไฟล์นั้นจะถูกแสดง
--follow
จำเป็นเพื่อดูการเปลี่ยนแปลงที่เกิดขึ้นก่อนการเปลี่ยนชื่อ
เท่าที่ฉันสามารถบอกได้นี่เป็นวิธีเดียวที่จะเห็นชุดการเปลี่ยนแปลงล่าสุดที่เกิดขึ้นกับไฟล์ทันทีโดยไม่ต้องใช้git log
(หรือคล้ายกัน) เพื่อนับจำนวนการแก้ไขที่เข้าแทรกแซงหรือกำหนดแฮชของการกระทำ
หากต้องการดูการเปลี่ยนแปลงการแก้ไขที่เก่ากว่าเพียงเลื่อนดูบันทึกหรือระบุการมอบหมายหรือแท็กที่จะเริ่มบันทึก (แน่นอนการระบุการมอบหมายหรือแท็กจะนำคุณกลับสู่ปัญหาดั้งเดิมของการหาว่าการมอบอำนาจหรือแท็กที่ถูกต้องคืออะไร)
เครดิตที่เครดิตครบกำหนด:
- ฉันค้นพบว่า
log -p
ต้องขอบคุณคำตอบนี้
- ให้เครดิตกับ FranciscoPuga และคำตอบนี้เพื่อแสดง
--follow
ตัวเลือกให้ฉัน
- ให้เครดิตกับ ChrisBetti สำหรับการกล่าวถึง
-n 1
ตัวเลือกและ atatko สำหรับการกล่าวถึง-1
ตัวแปร
- ขอขอบคุณเครดิต sweaver2112 ที่ทำให้ฉันอ่านเอกสารและเข้าใจ
-p
ว่า "ความหมาย" หมายถึงอะไร
git diff HEAD^ <file_path>