ด้วย 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คุณจะมี ดูคำตอบของฉันด้านล่าง