Nội dung chính
hiện
Branch là gì?
- Branch là cái dùng để phân nhánh và ghi lại luồng của lịch sử, một branch tương tự như một “không gian làm việc”.
- Branch đã phân nhánh sẽ không ảnh hưởng đến branch khác nên có thể tiến hành nhiều thay đổi đồng thời trong cùng 1 repository.
- Hơn nữa, branch đã phân nhánh có thể chỉnh sửa tổng hợp lại thành 1 branch bằng việc hợp lại (merge) với branch khác.
Một số lênh branch cơ bản
Xem branch có ở local
$ git branch
Xem branch có ở remote
Ví dụ ta có remote tên là upstream, ta muốn biết trên remote đó có các branch nào
$ git fetch upstream
$ git branch -r
Chuyển đổi branch
Ví dụ chuyển đến branch có tên <branch-name>
$ git checkout <branch-name>
Tạo branch mới
Lệnh tạo branch mới <new-branch-name> từ branch hiện tại, đồng thời di chuyển tới branch mới này
$ git branch <new-branch-name>
hoặc
$ git checkout -b <new-branch-name>
Hợp nhất branch
Ví dụ ta muốn hợp nhất <branch-name> vào branch hiện tại
$ git merge <branch-name>
Đổi tên branch ở local
Ví dụ đổi tên branch hiện tại là <modified-branch-name>
$ git branch -m "modified-branch-name>
Xóa branch ở local
Ví dụ ta muốn xóa branch có tên <branch-name>
Trước hết cần di chuyển HEAD không phải đang đứng ở <branch-name>, checkout <other-branch-name>
git branch --delete <branch-name>
hoặc
git branch -d <branch-name>
hoặc
git branch --delete --force <branch-name>
hoặc
git branch -D <branch-name>
Xóa branch ở remote
Ví dụ ta có 1 remote tên là upstream, ta muốn xóa branch có tên là <branch-name>
git push upstream --delete <branch-name>
Push branch lên remote
Ví remote có tên là upstream, push branch <branch-name> ở local lên remote
git push upstream <branch-name>
Push branch lên remote và đặt lại tên branch
git push upstream <branch-name>:<remote-branch-name>
Cập nhật code từ remote về local
git pull upstream <branch-name>
hoặc đơn giản là
git pull