Tạo nhánh trong git và quản lý nhánh
Trong repo của bạn ở github, bạn cần giữ nhánh chính sạch sẽ, nghĩa là không có bất kì sự thay đổi nào.
Khi bạn thực hiện một pull request trên nhánh, bạn có thể tiếp tục làm việc với nhánh khác và thực hiện một pull request khác trên nhánh khác này.
Trước khi tạo một nhánh mới, pull những thay đổi từ upstream. Nhánh master trên local cần được cập nhật.
Tạo một nhánh trên máy local và chuyển sang nhánh này:
$ git checkout -b [ten_nhanh_moi]
Thay đổi nhánh làm việc :
$ git checkout [ten_nhanh_moi]
Đẩy nhánh lên github :
$ git push origin [ten_nhanh_moi]
Khi bạn muốn commit một vài thứ trong nhánh, hãy chắc chắn rằng bạn đang ở trong nhánh đó. Thêm tham số -u để thiết lập upstream.
Bạn có thể thấy tất cả các nhánh bằng câu lệnh :
$ git branch
Nó sẽ hiện ra tương tự thế này :
*[ten_nhanh_moi] master
Thêm một remote mới cho nhánh:
```
$ git remote add [ten_remote]
Đẩy những thay đổi từ commit vào trong nhánh:
$ git push [tem_remote_moi][ten_nhanh]
Cập nhật nhánh của bạn khi nhánh gốc từ repo chính đã được cập nhật:
$ git fetch [ten_remote]
Sau đó bạn cần áp dụng sự thay đổi, nếu nhánh của bạn có nguồn gốc từ nhánh master bạn làm như sau :
$ git checkout branch-name $ git checkout master $ git merge branch-name
Xóa nhánh trên file hệ thống local:
$ git branch -d [ten_nhanh_moi]
Cưỡng chế xóa nhánh local trên hệ thống file:
$ git branch -D [ten_nhanh_moi]
Xóa nhánh trên github:
$ git push origin :[ten_nhanh_moi]
Clone một nhánh nào đó không phải là nhánh master từ remote repo
nếu chưa có nhánh master thì clone nhánh master hoặc một nhánh nào đó từ repo đó
git clone –branch first URL localrepo
sau đó fetch những nhánh còn lại
git fetch origin second:second third:third
hoặc dùng vòng lặp
cd localrepo for branch in second third etc; do git fetch origin $branch:$branch done
Kiểm tra remote repo có bao nhiêu nhánh
git remote show origin ```
Tham khảo: https://github.com/Kunena/Kunena-Forum/wiki/Create-a-new-branch-with-git-and-manage-branches