ก่อนอื่นฉันเพิ่งเริ่มใช้ Git
ฉันลบไฟล์จำนวนมากในเครื่อง Mac โดยใช้ Finder ฉันต้องการให้ไฟล์ที่ฉันลบไปไม่แสดงในสาขาปัจจุบันอีกต่อไป แต่เป็นเช่นนั้น
ผู้ใช้ Git รู้คำสั่งในการอัปเดตดัชนีหรือไม่?
ก่อนอื่นฉันเพิ่งเริ่มใช้ Git
ฉันลบไฟล์จำนวนมากในเครื่อง Mac โดยใช้ Finder ฉันต้องการให้ไฟล์ที่ฉันลบไปไม่แสดงในสาขาปัจจุบันอีกต่อไป แต่เป็นเช่นนั้น
ผู้ใช้ Git รู้คำสั่งในการอัปเดตดัชนีหรือไม่?
คำตอบ:
ฉันคิดว่านี่จะเป็นวิธีที่ง่ายกว่าในการทำสิ่งที่คุณต้องการ:
git add . -A
จากนั้นคุณจะทำ:
git commit -m "removed some files"
ตามที่ระบุไว้ข้างต้น.
bash
เพื่อทำข้างต้น น่าอัศจรรย์
git help add
จะบอกคุณว่า-A
หมายถึงอะไรและแสดงรายการสวิตช์อื่น ๆ ทั้งหมดด้วย
คุณสามารถดูไฟล์ที่ถูกลบซึ่งยังคง 'ติดตาม' ด้วย:
git ls-files --deleted
หากต้องการลบไฟล์จากสาขาคุณสามารถดำเนินการดังนี้:
git ls-files --deleted -z | xargs -0 git rm
จากman git-rm
:
ลบไฟล์ออกจากดัชนีหรือจากโครงสร้างการทำงานและดัชนี git-rm จะไม่ลบไฟล์ออกจากไดเร็กทอรีการทำงานของคุณ (ไม่มีตัวเลือกในการลบไฟล์ 13 ออกจากโครงสร้างงานเท่านั้น แต่ยังเก็บไว้ในดัชนีใช้ / bin / rm หากคุณต้องการทำเช่นนั้น)
สุดท้ายในการดำเนินการ "ลบ" ให้ทำสิ่งต่อไปนี้
git commit -m "removed some files"
git commit -m "removed some files"
ฉันไม่รู้ว่าสิ่งนี้ถูกเพิ่มใน git ตั้งแต่คำตอบก่อนหน้านี้หรือไม่ แต่ฉันเพิ่งใช้
git add -u
git commit -m "Removed some files"
เพื่อให้บรรลุสิ่งเดียวกัน
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch deletefile.name' --prune-empty --tag-name-filter cat -- --all
git commit -m "Removed deletefile.name"
git push origin master --force
แทนที่ deleteefile.name ด้วยไฟล์ที่จะลบ สำหรับคำอธิบายโดยละเอียดในเชิงลึกโปรดอ่านบทความดีๆhttps://help.github.com/articles/remove-sensitive-data