
Git cơ bản là kỹ năng bắt buộc với bất kỳ lập trình viên nào, dù bạn làm việc một mình hay trong đội nhóm lớn. Bài viết này hướng dẫn Git từ con số không: cài đặt, cấu hình, tạo repository, commit đầu tiên và đẩy code lên GitHub bằng các lệnh thực tế.
Git là gì và vì sao cần học Git?
Git là hệ thống quản lý phiên bản phân tán, ghi lại toàn bộ lịch sử thay đổi của mã nguồn. Khi dùng Git, bạn có thể quay lại bất kỳ trạng thái nào của dự án, thử nghiệm trên nhánh riêng mà không phá hỏng code chính, và cộng tác với nhiều người trên cùng một codebase mà không sợ ghi đè lẫn nhau.
Lợi ích lớn nhất của Git nằm ở chỗ mọi thao tác đều chạy trên máy local, nhanh và không cần mạng. Các dịch vụ như GitHub, GitLab hay Bitbucket chỉ là nơi lưu trữ từ xa để đồng bộ và cộng tác. Khi đã nắm Git cơ bản, bạn đọc hiểu gần như mọi dự án mã nguồn mở trên thế giới.
Cài đặt Git
- Windows: tải bộ cài từ trang chủ Git, cài đặt theo mặc định và dùng Git Bash làm terminal.
- macOS: cài qua Homebrew với lệnh
brew install githoặc dùng Xcode Command Line Tools. - Linux: dùng lệnh
sudo apt install git(Ubuntu, Debian) hoặcsudo dnf install git(Fedora).
Sau khi cài xong, kiểm tra phiên bản bằng lệnh git --version. Tiếp theo, cấu hình tên và email để mỗi commit ghi đúng tác giả:
git config --global user.name "Ten Cua Ban"
git config --global user.email "[email protected]"
Khởi tạo repository đầu tiên
Mở terminal trong thư mục dự án và chạy:
git init
Lệnh này tạo thư mục ẩn .git chứa toàn bộ lịch sử phiên bản. Bạn có thể xem trạng thái hiện tại bất cứ lúc nào bằng git status. Tạo một file index.html đơn giản rồi chạy lại git status, Git sẽ báo file chưa được theo dõi.
Commit đầu tiên
Git phân biệt rõ ba vùng: working directory (nơi bạn sửa file), staging area (nơi chọn các thay đổi sẽ đi vào commit) và repository (nơi lưu commit). Muốn đưa thay đổi vào commit, bạn phải chuyển file qua staging trước:
git add index.html
git commit -m "Tao trang index dau tien"
Lệnh git add thêm file vào staging, lệnh git commit chốt lại một phiên bản kèm thông điệp mô tả. Thông điệp commit nên ngắn gọn, rõ ràng, viết ở dạng mệnh lệnh. Muốn thêm toàn bộ thay đổi cùng lúc, dùng git add . nhưng hãy kiểm tra git status trước để tránh commit nhầm file không mong muốn.
Branch và merge
Branch là nhánh làm việc độc lập, cho phép phát triển tính năng mới mà không ảnh hưởng code chính. Tạo nhánh mới và chuyển sang nhánh đó:
git branch feature-login
git checkout feature-login
Viết code trên nhánh feature, commit bình thường, sau đó quay lại nhánh chính và gộp lại:
git checkout main
git merge feature-login
Nếu hai nhánh sửa cùng một dòng code, Git báo conflict. Lúc này bạn mở file, giữ lại phần code đúng, xóa các dấu <<<<<<<, =======, >>>>>>>, rồi commit lại. Conflict là chuyện bình thường trong cộng tác, đừng sợ.
Đẩy code lên GitHub
Tạo repository trống trên GitHub, sau đó kết nối local với remote và đẩy code:
git remote add origin https://github.com/ten-ban/du-an.git
git push -u origin main
Lần đầu push cần đăng nhập, GitHub hiện khuyến khích dùng personal access token thay cho mật khẩu. Từ đó về sau, mỗi lần thay đổi chỉ cần ba lệnh: git add ., git commit -m "mo ta", git push.
File .gitignore và quy tắc làm việc nhóm
Không phải file nào cũng nên đưa vào Git: thư mục node_modules, file biến môi trường chứa mật khẩu, file build tạm thời đều nên loại bỏ. Tạo file .gitignore ở thư mục gốc dự án và liệt kê các pattern cần bỏ qua. Khi làm việc nhóm, mỗi người nên làm việc trên nhánh riêng, đặt tên nhánh mô tả tính năng như feature/login hoặc fix/header, và tạo pull request để đồng đội review trước khi merge vào nhánh chính.
Các lệnh hay dùng khác
git log: xem lịch sử commit.git diff: xem chi tiết thay đổi chưa staged.git pull: kéo thay đổi mới nhất từ remote về.git stash: tạm cất thay đổi chưa commit để làm việc khác.git reset --hard HEAD: hủy toàn bộ thay đổi chưa commit (dùng cẩn thận vì không thể hoàn tác).
Kết luận
Git cơ bản chỉ gói gọn trong vài lệnh: init, add, commit, branch, merge, push, pull. Hãy tự tạo một dự án nhỏ và commit hàng ngày để thành phản xạ. Tài liệu chính thức tại git-scm.com và hướng dẫn của GitHub tại docs.github.com là nơi bạn nên đọc tiếp khi muốn đi sâu.
