ฉันรู้ว่าคำถามนี้ได้รับการตอบในขณะที่ผ่านมา แต่หลังจากอ่านมันฉันอาจช่วยเพิ่มตัวอย่างของคำสั่งสาขา git svn เฉพาะและเกี่ยวข้องกับเวิร์กโฟลว์ทั่วไป
เช่นเดียวกับ KCH git svn branch
ตอบการใช้งาน นี่เป็นตัวอย่างแบบเต็ม (หมายเหตุ-n
สำหรับการทดสอบแบบแห้ง):
git svn branch -n -m "Branch for authentication bug" auth_bug
ถ้าเป็นไปได้ดีเซิร์ฟเวอร์ตอบกลับพร้อมคำตอบดังนี้:
กำลังคัดลอกhttps://scm-server.com/svn/portal/trunkที่ r8914 ไปที่https://scm-server.com/svn/portal/branches/auth_bug ...
และหากไม่มี-n
สวิตช์เซิร์ฟเวอร์อาจเพิ่มสิ่งต่อไปนี้:
พบจุดสาขาที่เป็นไปได้: https://scm-server.com/svn/portal/trunk => https://scm-server.com/portal/branches/auth_bug , 8914
พบสาขาหลัก: (อ้างอิง / รีโมท / auth_bug)
d731b1fa028d30d685fe260f5bb912cbf59e1971
ติดตามผู้ปกครองด้วย do_switch
ประสบความสำเร็จในการติดตามผู้ปกครอง r8915 = 6ed10c57afcec62e9077fbeed74a326eaa4863b8
(refs / รีโมท / auth_bug)
ส่วนที่ดีที่สุดของมันตอนนี้คุณสามารถสร้างสาขาท้องถิ่นโดยอิงจากสาขาระยะไกลของคุณเช่น:
git checkout -b local/auth_bug auth_bug
ซึ่งหมายความว่า "ตรวจสอบและสร้างสาขาท้องถิ่นที่มีชื่อauth_bug
และทำให้เป็นไปตามสาขาระยะไกล (พารามิเตอร์สุดท้าย)auth_bug
ทดสอบว่าสาขาในพื้นที่ของคุณทำงานบนสาขาระยะไกลนั้นโดยใช้dcommit
กับ--dry-run
( -n
)
git svn dcommit -n
และเซิร์ฟเวอร์ SVN ควรตอบกลับด้วยชื่อสาขาใหม่:
มุ่งมั่นที่จะhttps://scm-server.com/svn/portal/branches/auth_bug ...