- มองหาคำสั่งเช่น
ls -Rหรือdir/sที่สามารถแสดงรายการไฟล์ทั้งหมดในคอมมิต / สาขา - มีคำสั่งใดที่สามารถเปรียบเทียบไฟล์สองไฟล์จากสาขาต่างๆได้หรือไม่?
ls -Rหรือdir/sที่สามารถแสดงรายการไฟล์ทั้งหมดในคอมมิต / สาขาคำตอบ:
git ls-tree -r --name-only <commit>(แทนที่จะ<commit>มีได้<branch>) -tตัวเลือกที่แสดงรายการไดเร็กทอรีย่อยก่อนที่จะลงมาgit diff <branchA>:<fileA> <branchB>:<fileB>, git diff <branchA> <branchB> -- <file>ในการเปรียบเทียบไฟล์เดียวกันจากสาขาต่างๆ:
git diff branch_1..branch_2 file.txt
ในการแสดงรายการไฟล์ทั้งหมดในวัตถุโครงสร้าง:
git ls-tree -r branch
lsคุณลืม-treeตอนจบ :)
เพื่อแสดงรายการไฟล์ทั้งหมดที่เพิ่มในสาขาใหม่
git diff --name-only branch1 master
git ls-filesgit ls-filesอธิบายไว้ในdocu git-scm :# Switch to <branch> of interest
$ git checkout <branch>
# List all files in <branch>
$ git ls-files
สำหรับการแสดงรายการคุณสามารถใช้git ls-filesเพื่อแสดงรายการไฟล์ทั้งหมดแบบวนซ้ำในดัชนี / ไดเร็กทอรีการทำงานปัจจุบัน คุณอาจอ้างถึงGit-SCM Docs / git-ls-filesหรือพิมพ์man git-ls-filesถ้าคุณติดตั้ง Git และมี man page พร้อมใช้งาน
มันมีตัวเลือกที่ดีที่จะแสดงไฟล์ในรูปแบบที่แตกต่างกันเช่นcached, staged, deleted, modified, ignoredหรือothersสำหรับที่ไม่ได้ติดตาม นอกจากนี้ยังรองรับรูปแบบการจับคู่ มียังมี--debugหาเรื่องคุณสามารถแสดงรายการcreation time, modification time, inode id, owner & group id, sizeและflagsไฟล์
สำหรับความแตกต่างของสองสาขาให้ใช้git diff <branch> <other branch>ตามที่ระบุไว้ในคำตอบอื่น ๆ