นี่เป็นการย้ายพื้นฐานหนึ่ง repo ไปยังตำแหน่งใหม่ ฉันใช้ลำดับนี้ตลอดเวลา ด้วย- ไม่เห็นไฟล์ต้นฉบับใด ๆ
เปิด Git Bash
สร้างโคลนเปล่าของที่เก็บ
git clone --bare https://github.com/exampleuser/old-repository.git
Mirror-push ไปยังที่เก็บใหม่
cd old-repository.git
git push --mirror https://github.com/exampleuser/new-repository.git
ลบที่เก็บโลคัลชั่วคราวที่คุณสร้างในขั้นตอน 1
cd ../
rm -rf old-repository.git
ทำไมต้องเป็นกระจก ดูเอกสารของ git: https://git-scm.com/docs/git-push
- ผลักดันทุกสาขา (เช่นอ้างอิงภายใต้ refs / หัว /); ไม่สามารถใช้กับผู้อื่นได้
- มิเรอร์แทนการตั้งชื่อ ref แต่ละรายการที่จะผลักดันระบุว่า refs ทั้งหมดภายใต้ refs / (ซึ่งรวมถึง แต่ไม่ จำกัด เฉพาะ refs / heads /, refs / remotes /, และ refs / tags /) จะถูกมิเรอร์ไปยังที่เก็บรีโมต การอ้างอิงแบบโลคัลที่สร้างขึ้นใหม่จะถูกผลักไปที่ปลายรีโมตการอ้างอิงแบบโลคัลที่อัปเดตในท้องถิ่นจะถูกบังคับให้อัปเดตบนรีโมตปลายทางและการอ้างอิงที่ถูกลบจะถูกลบออกจากรีโมตปลายทาง นี่เป็นค่าเริ่มต้นหากตั้งค่าตัวเลือกการตั้งค่าระยะไกล .. กระจกเงา