Git: Pull một nhánh remote
Cập nhật lần cuối
Để pull thay đổi từ một nhánh remote cụ thể, chỉ định remote và nhánh: git pull origin <branch>. Lệnh này fetch nhánh đó và merge nó vào nhánh hiện tại. Nếu bạn muốn nhánh remote trở thành một nhánh local riêng, hãy fetch trước rồi checkout nó, xem các ví dụ bên dưới.
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 pull origin main | Pull main từ origin vào nhánh hiện tại |
git pull origin feature --rebase | Pull một nhánh và rebase thay vì merge |
git fetch origin | Tải mọi nhánh của remote (không merge) |
git switch feature | Checkout ở local một nhánh remote đã fetch |
Pull một nhánh chưa có ở local
Fetch nhánh đó, rồi tạo một nhánh local theo dõi nó.
| Bước | Lệnh | Kết quả |
|---|---|---|
| 1 | git fetch origin | Tải các nhánh của remote về |
| 2 | git switch feature | Tạo nhánh local feature theo dõi origin/feature |
| 3 | git pull | Từ giờ chỉ cần pull là nhánh luôn được cập nhật |
Câu hỏi thường gặp về pull nhánh remote
Làm sao để pull một nhánh remote cụ thể?
git pull origin <branch>. Lệnh này fetch nhánh được chỉ định từ remote origin và merge nó vào nhánh bạn đang checkout. Nếu muốn pull vào nhánh local tương ứng, hãy chuyển sang nhánh đó trước rồi chạy git pull.Làm sao để pull một nhánh remote chưa có ở local?
git fetch origin để tải các nhánh của remote, rồi git switch <branch>: Git hiện đại tự động tạo một nhánh local theo dõi origin/<branch>. Sau đó, chỉ cần git pull là nhánh luôn được cập nhật.Pull vào nhánh hiện tại và vào nhánh mới khác nhau thế nào?
git pull origin <branch> merge nhánh remote vào nhánh hiện tại, trộn lịch sử của chúng với nhau, hữu ích khi bạn muốn đưa thay đổi vào. Nếu bạn muốn nhánh remote đứng riêng, hãy fetch rồi chuyển sang nó để nó trở thành một nhánh local riêng biệt theo dõi remote.Làm sao để pull bằng rebase thay vì merge?
--rebase: git pull origin <branch> --rebase fetch nhánh đó và áp dụng lại các commit local của bạn lên trên nó, giữ lịch sử thẳng hàng thay vì tạo merge commit.Có thể luyện tập lệnh này online không?
git pull 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.