Git: Checkout một nhánh remote
Cập nhật lần cuối
Để làm việc trên một nhánh đã có trên remote nhưng chưa có trên máy bạn, trước hết chạy git fetch để Git biết về nhánh đó, rồi checkout nó. Git hiện đại làm việc này rất dễ: git switch <branch> tự động tạo một nhánh local theo dõi nhánh origin/<branch> tương ứng.
Thử các lệnh này trong playground terminal: một shell thật ngay trên trình duyệt, không cần cài đặt gì.
Cú pháp
| Lệnh | Tác dụng |
|---|---|
git fetch origin | Tải các nhánh của remote về |
git switch feature | Tạo nhánh local feature theo dõi origin/feature |
git checkout --track origin/feature | Cách cũ để theo dõi một nhánh remote |
git switch -c local origin/feature | Theo dõi nhánh đó dưới một tên local khác |
Ví dụ minh họa
Lấy nhánh của đồng đội về máy bạn.
| Bước | Lệnh | Kết quả |
|---|---|---|
| 1 | git fetch origin | Git biết đến origin/feature |
| 2 | git switch feature | Nhánh local feature được tạo, theo dõi nhánh remote |
| 3 | git pull | Giữ nhánh luôn đồng bộ về sau |
Câu hỏi thường gặp về checkout nhánh remote
Làm sao để checkout một nhánh remote?
git fetch origin để Git biết các nhánh trên remote, rồi chạy git switch <branch>. Git hiện đại thấy nhánh origin/<branch> tương ứng và tự động tạo một nhánh local theo dõi nó. Với Git phiên bản cũ, dùng git checkout --track origin/<branch>.Vì sao git switch báo nhánh không tồn tại?
git fetch origin (hoặc git fetch --all) trước, sau đó git switch <branch> sẽ hoạt động.Làm sao để checkout một nhánh remote với tên khác?
git switch -c <localname> origin/<branch> (hoặc git checkout -b <localname> origin/<branch>). Lệnh này tạo một nhánh local với tên bạn chọn và theo dõi nhánh remote, rất tiện khi tên nhánh remote trùng với một nhánh local đã có.Ở đây fetch và checkout khác nhau thế nào?
git fetch chỉ tải các nhánh remote về và cập nhật các ref remote-tracking, nó không cho bạn một nhánh để làm việc. Checkout (bằng git switch hoặc git checkout) mới là bước tạo ra nhánh local mà bạn thực sự làm việc trên đó. Bạn fetch một lần, rồi checkout.Có thể luyện tập lệnh này online không?
Có. Mở playground terminal để chạy các lệnh này trong một shell thật ngay trên trình duyệt, không cần cài đặt gì. Khóa học Git tương tác miễn phí của Coddy cũng hướng dẫn làm việc với remote từng bước.