ด้วย Git 2.15 (Q4 2017) " git branch
" เรียนรู้ " -c/-C
" เพื่อสร้างสาขาใหม่โดยการคัดลอกสาขาที่มีอยู่
ดูกระทำ c8b2cec (18 มิถุนายน 2017) โดยÆvar Arnfjord Bjarmason (avar
)
ดูกระทำ 52d59cc , กระทำ 5463caa (18 มิถุนายน 2017) โดยSahil Dua (sahildua2305
)
(ผสานโดยJunio C Hamano - gitster
- in 3b48045 , 03 Oct 2017)
branch
: เพิ่มตัวเลือก--copy
( -c
) เพื่อไปกับ--move
( -m
)
เพิ่มความสามารถใน--copy
สาขาและการอ้างอิงและการกำหนดค่าซึ่งใช้เครื่องจักรพื้นฐานเดียวกันกับตัวเลือก--move
( -m
) ยกเว้นการคัดลอกและการกำหนดค่าจะถูกคัดลอกแทนที่จะถูกย้าย
นี้จะเป็นประโยชน์สำหรับเช่นการคัดลอกสาขาหัวข้อเป็นรุ่นใหม่เช่นwork
การwork-2
หลังจากส่งwork
หัวข้อในรายการขณะที่การรักษาข้อมูลทั้งหมดติดตามและการกำหนดค่าอื่น ๆ ที่จะไปด้วยสาขาและแตกต่างจาก--move
การรักษาอื่น ๆ สาขาแล้วส่งไปรอบ ๆ การอ้างอิง
หมายเหตุ: เมื่อคัดลอกสาขาคุณจะยังคงอยู่ในสาขาปัจจุบันของคุณ
ดังที่ Junio C Hamano อธิบาย:
เมื่อสร้างสาขาใหม่B
โดยการคัดลอกสาขาA
ที่เกิดขึ้นเป็นสาขาปัจจุบันมันก็จะอัพเดตHEAD
ไปที่สาขาใหม่
มันอาจถูกสร้างขึ้นด้วยวิธีนี้เพราะ " git branch -c A B
" piggybacked การนำไปใช้กับ " git branch -m A B
"
สิ่งนี้ไม่ตรงกับความคาดหวังตามปกติ
ถ้าฉันนั่งบนเก้าอี้สีน้ำเงินและมีใครบางคนเข้ามาและทาสีใหม่ให้เป็นสีแดงฉันจะยอมรับว่าการนั่งบนเก้าอี้ที่เป็นสีแดง (ฉันก็ยังยืนแทนเพราะไม่มีเก้าอี้สีน้ำเงินตัวโปรดของฉันอีกต่อไป )
แต่ถ้าใครบางคนสร้างเก้าอี้สีแดงใหม่สร้างแบบจำลองขึ้นมาหลังจากเก้าอี้สีฟ้าที่ฉันกำลังนั่งอยู่ฉันไม่คาดว่าจะถูกบูทด้วยเก้าอี้สีน้ำเงินและจบลงด้วยการนั่งเก้าอี้สีแดงใหม่
git branch -c A B
คุณจะมี ดูคำตอบของฉันด้านล่าง