ใช้สิ่งต่อไปนี้:
git checkout -b <new-branch>
สิ่งนี้จะทำให้สาขาปัจจุบันของคุณเป็นเหมือนเดิมสร้างและชำระเงินสาขาใหม่และเก็บการเปลี่ยนแปลงทั้งหมดของคุณ จากนั้นคุณสามารถสเตจการเปลี่ยนแปลงในไฟล์ที่จะคอมมิทด้วย:
git add <files>
และมอบหมายให้สาขาใหม่ของคุณด้วย:
git commit -m "<Brief description of this commit>"
การเปลี่ยนแปลงในไดเรกทอรีการทำงานและการเปลี่ยนแปลงที่เกิดขึ้นในดัชนีไม่ได้เป็นของสาขาใด ๆ สิ่งนี้จะเปลี่ยนสาขาที่การแก้ไขเหล่านั้นจะสิ้นสุดลง
คุณไม่รีเซ็ตสาขาเดิมของคุณก็ยังคงอยู่ตามที่มันเป็น การส่งมอบครั้งสุดท้าย<old-branch>
จะยังคงเหมือนเดิม ดังนั้นคุณcheckout -b
แล้วกระทำ
อัปเดต 2020 / Git 2.23
Git 2.23 เพิ่มคำswitch
สั่งย่อยใหม่ในความพยายามที่จะล้างความสับสนบางส่วนที่มาจากการใช้งานที่มากเกินไปของcheckout
(สลับสาขา, การกู้คืนไฟล์, การถอด HEAD เป็นต้น)
เริ่มต้นด้วย Git รุ่นนี้แทนที่คำสั่งด้านบนด้วย:
git switch -c <new-branch>
พฤติกรรมที่เหมือนกันและยังคงไม่เปลี่ยนแปลง