GIt làm việc nhóm
I. Các lệnh cơ bản
git branch:- Git sẽ liệt kê tất cả branch local.
- Branch hiện tại sẽ có dấu
*trước tên.
Ví dụ:
nguyendangtrieu@admin:~/Hoctap/.../...$ git branch
* feature_zeroMQ
master
Tôi đang lm việc ở
branch feature_zeroMQ
II. Các bước để làm việc nhóm trên dự án
Bước 1: Clone repository
git clone git@github...
cd ...
- Bây giờ, ta đã có repo ở local hoàn chỉnh, nhánh mặc định là
main. - Không được
pushtrực tiếp vàobranch mainkhi chưa được phép của leader.
Bước 2: Cập nhập nhánh chính
Trước khi tạo nhánh, nên chắc chắn code trong nhánh chính đã mới nhất.
git checkout main
git pull origin main
git checkout main: di chuyển sangbranch main.git pull origin main: cập nhập code mới nhất từ remote.
Lí do: tránh xung đột khi
pushsau này.
Bước 3: Tạo branch riêng cho công việc
Giả làm tôi muốn làm việc với tính năng của thư viện zeroMQ
git checkout -b feature_zeroMQ
-b→ tạo branch mới và chi chuyển sang đó.- Tên branch nên rõ ràng, mô tả đúng phần công việc thực hiện:
feature_zeroMQ - Làm việc trên
branch feature_zeroMQsẽ không ảnh hướng tớibranch main
Bước 4: Thực hiện các thay đổi
- Chỉnh sửa code, thêm file, sửa bug…
- Kiểm tra bằng compiler/Makefile.
- Khi sẵn sàng commit:
git status # xem các file thay đổi
git add . # hoặc git add <file> để chọn file
git commit -m "Add ZeroMQ send/receive functions"
Commit message nên ngắn gọn nhưng rõ ràng, mô tả sự thay đổi.
Bước 5: Push branch lên remote
git push origin feature_zeroMQ
- Bây giờ branch của tôi đã có trên github.
Nếu chạy lệnh này lần đầu, GitHub sẽ gợi ý link tạo Pull Request.

Bước 6: Tạo Pull Request (PR)
Truy cập link GitHub được gợi ý, ví dụ:
https://github.com/.../.../pull/new/feature_zeroMQ
- Chọn
base branch(nhánh sẽ merge vào, thường là main hoặc dev). - Viết tiêu đề và mô tả PR: thay đổi gì, lý do, ảnh hưởng ra sao.
- Nhấn
Create Pull Request.
Lúc này team sẽ review code, bạn có thể sửa lại branch nếu cần.
Bước 7: Nếu nhánh chính thay đổi trong lúc bạn làm việc
- Trước khi PR được merge, main có thể có commit mới.
- Bạn cần cập nhật branch của mình:
git checkout main
git pull origin main # lấy main mới
git checkout feature_zeroMQ
git merge main # gộp main vào branch của bạn
# hoặc git rebase main nếu muốn lịch sử sạch hơn
Bước 8: Khi PR được merge
- Branch của bạn đã được tích hợp vào nhánh chính.
- Bạn có thể xóa branch trên remote và local:
git branch -d feature_zeroMQ # xóa local
git push origin --delete feature_zeroMQ # xóa remote
All rights reserved