ในขณะที่คำตอบแรกและคำตอบที่เลือกนั้นถูกต้องทางเทคนิคมีความเป็นไปได้ที่คุณยังไม่ได้รับวัตถุทั้งหมดและอ้างอิงจากพื้นที่เก็บข้อมูลระยะไกล หากเป็นกรณีนี้คุณจะได้รับข้อผิดพลาดต่อไปนี้:
$ git checkout -b remote_branch origin/remote_branch
ร้ายแรง: เช็คเอาต์ git: การอัพเดทพา ธ ไม่สามารถใช้งานได้กับการสลับแบรนช์
คุณตั้งใจจะเช็คเอาต์ 'Origin / remote_branch' ซึ่งไม่สามารถแก้ไขได้ตามที่มอบหมาย?
สารละลาย
ถ้าคุณได้รับข้อความนี้ก่อนอื่นคุณต้องทำgit fetch origin
ที่เป็นชื่อของพื้นที่เก็บข้อมูลระยะไกลก่อนที่จะมีการเรียกใช้origin
git checkout remote_branch
นี่คือตัวอย่างเต็มรูปแบบที่มีการตอบสนอง:
$ git fetch origin
remote: Counting objects: 140, done.
remote: Compressing objects: 100% (30/30), done.
remote: Total 69 (delta 36), reused 66 (delta 33)
Unpacking objects: 100% (69/69), done.
From https://github.com/githubuser/repo-name
e6ef1e0..5029161 develop -> origin/develop
* [new branch] demo -> origin/demo
d80f8d7..359eab0 master -> origin/master
$ git checkout demo
Branch demo set up to track remote branch demo from origin.
Switched to a new branch 'demo'
อย่างที่คุณเห็นการเรียกใช้การgit fetch origin
เรียกใช้สาขาระยะไกลใด ๆ ที่เรายังไม่ได้ติดตั้งเพื่อติดตามบนเครื่องท้องถิ่นของเรา จากที่นั่นเนื่องจากตอนนี้เรามีการอ้างอิงไปยังสาขาระยะไกลเราสามารถเรียกใช้git checkout remote_branch
และเราจะได้รับประโยชน์จากการติดตามระยะไกล