ปัญหา
คุณจะสร้างสำเนาตื้น ๆ ด้วย git-svn จากแหล่งเก็บข้อมูลการโค่นล้มได้อย่างไรเช่นคุณจะดึงเฉพาะการแก้ไขสามครั้งล่าสุดได้อย่างไร
git clone
คำสั่งจะได้รับการแก้ไข n ที่ผ่านมาจากที่เก็บ Git ถ้าคุณใช้ตัวเลือก--depth
คือคุณได้รับสำเนาตื้นของพื้นที่เก็บข้อมูล ตัวอย่าง:
git clone --depth 3 git://some/repo myshallowcopyrepo
มีตัวเลือกที่คล้ายกันสำหรับ git-svn?
การค้นพบของฉันจนถึงตอนนี้
จนถึงตอนนี้ฉันเพิ่งพบ-rN
ตัวเลือกที่N
จะแก้ไขการดึง ตัวอย่าง:
git svn clone -rN svn://some/repo
-r$REVNUMBER:HEAD
ตามเอกสารที่มีความเป็นไปได้ที่จะใช้ ฉันลองทำสิ่งต่อไปนี้เพื่อรับการแก้ไข 3 ครั้งล่าสุดซึ่งส่งคืนข้อความแสดงข้อผิดพลาด
$ git svn clone --prefix=svn/ -s -rHEAD~3:HEAD http://some/svn/repo .
revision argument: HEAD~3:HEAD not understood by git-svn
ดังนั้นฉันจึงแทนที่HEAD~3
ด้วยจำนวนจริงของการแก้ไขครั้งที่สาม แต่ครั้งล่าสุด 534 ที่ได้ผล แต่นั่นต้องให้ฉันคิดเลขการแก้ไขครั้งที่สาม แต่การกระทำครั้งสุดท้าย
$ git svn clone --prefix=svn/ -s -r534:HEAD http://some/svn/repo .
เอกสาร
--depth
สำหรับการgit svn
ตั้งแต่การสนับสนุนที่มีอยู่แล้ว และมันมีอยู่แล้วเพื่อหา rev ล่าสุดจากเซิร์ฟเวอร์?
-s is for --stdlayout which presumes the svn recommended layout for tags, trunk, and branches.
( แต่ไม่ได้ทำงานสำหรับฉัน)