ติดตามนี้ดังนั้นคำถาม: ถ้าฉันมีโคลนตื้นวิธีการดึงข้อมูลเก่ากระทำทั้งหมดที่จะทำให้มันเป็นโคลนเต็มรูปแบบ?
ติดตามนี้ดังนั้นคำถาม: ถ้าฉันมีโคลนตื้นวิธีการดึงข้อมูลเก่ากระทำทั้งหมดที่จะทำให้มันเป็นโคลนเต็มรูปแบบ?
คำตอบ:
แก้ไข: git fetch --unshallow
ตอนนี้เป็นตัวเลือก (ขอบคุณ Jack O'Connor)
คุณสามารถเรียกใช้git fetch --depth=1000000
(สมมติว่าที่เก็บมีการกระทำน้อยกว่าหนึ่งล้าน)
git fetch --unshallow
มีอยู่แล้ว (เหมือนในคำตอบของ @ sdram) คำตอบนี้ไม่ใช่คำตอบที่ดีที่สุดอีกต่อไป
git fetch --depth=2147483647
เป็นความลึกที่ใหญ่ที่สุดที่เป็นไปได้เพื่อจัดเตรียมให้กับคำสั่ง
git fetch --unshallow
แต่ก็ยังไม่แสดงสาขาทั้งหมด
คำสั่งด้านล่าง(รุ่น git 1.8.3)จะแปลงโคลนตื้นเป็นปกติ
git fetch --unshallow
จากนั้นเพื่อเข้าถึงสาขาทั้งหมดที่จุดเริ่มต้น (ขอบคุณ @Peter ในความคิดเห็น)
git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
git fetch origin
git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*";
git fetch origin
จากคำตอบควรเป็นเช่นเดียวกับการแก้ไข. git / config ด้วยมือ
git fetch --unshallow --update-head-ok origin '+refs/heads/*:refs/heads/*'
ทำงานให้ฉัน
ฉันจำเป็นต้องซื้อคืน repo ให้มากขึ้น
หลังจากอ่านman git-fetch
แล้วฉันพบว่าไม่สามารถระบุการมอบหมายได้ แต่สามารถระบุวันที่:
git fetch --shallow-since=15/11/2012
สำหรับผู้ที่ต้องการความลึกที่เพิ่มขึ้นman
อ้างอีก:
--deepen=<depth>
คล้ายกับ - ความลึกยกเว้นจะระบุจำนวนการกระทำจากขอบเขตตื้น ๆ ปัจจุบันแทนที่จะเป็นจากปลายสุดของประวัติสาขาระยะไกลแต่ละอัน
คุณสามารถลองสิ่งนี้:
git fetch --update-shallow
ไม่มีข้อความใดในเคล็ดลับที่ทำขึ้น ฉันพยายามที่จะทำงานกับแท็ก git เริ่มต้นจากโคลนตื้น
ก่อนอื่นฉันลอง
git fetch --update-shallow
ชนิดของการทำงานครึ่งทางผ่าน ยังไม่มีแท็ก!
git fetch --depth=1000000
คำสั่งสุดท้ายนี้ดึงแท็กจริงๆและในที่สุดฉันก็สามารถเรียกใช้งานได้
git checkout -b master-v1.1.0 tags/v1.1.0
และทำได้ด้วย
HTH