Hướng Dẫn Sử Dụng Git: Từ Những Bước Đầu Đến Commit Đầu Tiên
Giới thiệu
Chào mừng bạn đến với hành trình phát triển của mình trong một startup fintech ở Bangalore. Nhóm của bạn đang xây dựng một ứng dụng thanh toán di động và điều quan trọng là phải đảm bảo ứng dụng này cực kỳ đáng tin cậy. Ngày đầu tiên, người quản lý của bạn nói:
"Hãy cài đặt Git và thực hiện commit đầu tiên. Đây là cách chúng tôi theo dõi mọi dòng mã trong dự án."
Nếu bạn là người mới, đừng lo lắng! Hãy cùng nhau bước qua từng bước một, với mỗi lệnh Git được giải thích rõ ràng.
Mục lục
- Cài đặt Git
- Cấu hình thông tin người dùng
- Tạo dự án và khởi tạo Git
- Tạo một tệp
- Ghi lại tệp
- Commit tệp
- Xem commit của bạn
- Thực hiện thay đổi
- Hiểu trạng thái tệp trong Git
- Bỏ qua các tệp không cần thiết
- Local vs Remote
- Kết luận
Cài đặt Git
Trước tiên, bạn cần cài đặt Git.
Windows:
- Tải Git cho Windows → chạy trình cài đặt → mở Git Bash.
- Hoặc, nếu bạn thích sử dụng terminal:
bash
winget install --id Git.Git -e
macOS:
bash
brew install git # sử dụng Homebrew
# HOẶC
xcode-select --install
Linux (Ubuntu/Debian):
bash
sudo apt update
sudo apt install git
Xác minh:
bash
git --version
Nếu hiển thị phiên bản git 2.x.x, bạn đã sẵn sàng!
Cấu hình thông tin người dùng
Mỗi khi bạn commit, Git sẽ lưu tên và email của bạn. Điều này giúp đội ngũ biết ai đã thực hiện thay đổi gì.
bash
git config --global user.name "Ravi Kumar"
git config --global user.email "ravi@example.com"
Giải thích về lệnh git config
- git: là công cụ mà chúng ta đang sử dụng (hệ thống kiểm soát phiên bản).
- config: đại diện cho cấu hình, về cơ bản là “cài đặt” cho Git.
Vì vậy, git config = “Này Git, tôi muốn thiết lập hoặc thay đổi cài đặt của bạn.”
Kiểm tra cài đặt:
bash
git config --list
Lệnh này yêu cầu Git: “Cho tôi biết tất cả các cài đặt mà bạn hiện biết.”
Trong các nhóm thực tế, điều này rất quan trọng. Nếu Ravi làm hỏng đăng nhập, mọi người sẽ biết ai là người gây ra lỗi.
Tạo dự án và khởi tạo Git
Giả sử nhóm của bạn đang bắt đầu dịch vụ “banking-web”.
bash
mkdir banking-web && cd banking-web
git init
- mkdir: Tạo một thư mục mới. Thư mục chỉ là một từ khác cho thư mục.
- cd: Thay đổi thư mục. Nó yêu cầu terminal: “Đi vào thư mục mà tôi vừa tạo.”
- git init: Khởi tạo một kho Git mới bên trong thư mục hiện tại.
Tạo một tệp
Bạn tạo tệp đầu tiên của mình:
bash
echo "# Banking Web App" > README.md
- echo: là một lệnh đơn giản in văn bản ra màn hình.
- >: là toán tử chuyển hướng, cho phép bạn đưa đầu ra vào một tệp.
Ghi lại tệp
Bạn quyết định: “Đúng rồi, tôi muốn lưu README.md trong Git.”
bash
git add README.md
Bây giờ kiểm tra lại:
bash
git status
Commit tệp
Bây giờ bạn lưu snapshot này vào lịch sử của Git:
bash
git commit -m "Initial commit: add README"
Xem commit của bạn
Kiểm tra lịch sử:
bash
git log --oneline
Thực hiện thay đổi
Một tuần sau, bạn thêm một liên kết “Quên mật khẩu” trên trang đăng nhập:
bash
mkdir src
echo '<a href="/forgot-password">Forgot Password?</a>' > src/login.html
Hiểu trạng thái tệp trong Git
Vòng đời của tệp:
- Untracked: tệp tồn tại, chưa được thêm vào Git.
- Staged: đã chọn để commit (git add).
- Committed: được lưu vĩnh viễn trong lịch sử (git commit).
- Modified: tệp đã được chỉnh sửa sau commit nhưng chưa được staged.
Bỏ qua các tệp không cần thiết
Trong các dự án thực tế, bạn không muốn các tệp log, cache hoặc ghi chú cá nhân trong Git.
Tạo tệp .gitignore:
bash
echo "node_modules/\n*.log\n.env" > .gitignore
git add .gitignore
git commit -m "Add .gitignore for temp files"
Local vs Remote
Hiện tại, mọi thứ là local (tức là chỉ tồn tại trên máy tính của bạn). Nhưng các nhóm làm việc cùng nhau sử dụng kho từ xa (GitHub, GitLab, Bitbucket).
Kết nối với kho từ xa:
bash
git remote add origin https://github.com/acme/banking-web.git
git branch -M master
git push -u origin master
Kết luận
Git không chỉ là một công cụ, mà là chiếc máy thời gian và mạng an toàn của bạn. Mỗi thay đổi được lưu, không có gì bị mất, và sự hợp tác trở nên suôn sẻ.
Nếu bạn biết chỉ những lệnh này vào ngày đầu tiên tại công ty, bạn sẽ cảm thấy mình đã là một phần của đội ngũ phát triển.
FAQ
1. Tại sao tôi cần Git?
Git giúp theo dõi các thay đổi trong mã nguồn, cho phép nhiều nhà phát triển làm việc cùng nhau mà không bị xung đột.
2. Cách tôi có thể khôi phục mã đã bị xóa?
Bạn có thể sử dụng lệnh git log để tìm commit trước đó và quay lại trạng thái đó.
3. Tôi có thể làm gì nếu không muốn theo dõi một tệp cụ thể?
Sử dụng .gitignore để chỉ định các tệp không cần theo dõi.
Thực hành tốt nhất
- Luôn commit với các thông điệp rõ ràng và có ý nghĩa.
- Thường xuyên kiểm tra trạng thái repo của bạn bằng
git status.
Cạm bẫy thường gặp
- Quên cấu hình tên và email trước khi thực hiện commit có thể gây nhầm lẫn cho các thành viên khác trong nhóm.
Mẹo hiệu suất
- Sử dụng các lệnh Git một cách thường xuyên để giữ cho lịch sử commit của bạn sạch sẽ và dễ theo dõi.