Tạo kho lưu trữ cục bộ
Sau khi cài đặt Git, bạn sẽ thấy biểu tượng Git Bash trong menu Start. Mở ứng dụng này và thực hiện các lệnh sau:
cd /d
mkdir my-project
cd my-project
Các lệnh trên giúp chuyển sang ổ đĩa D:, tạo thư mục my-project và di chuyển vào đó. Để xác minh vị trí hiện tại, dùng lệnh pwd. Tiếp theo, khởi tạo kho Git bằng:
git init
Lúc này, thư mục ẩn .git sẽ xuất hiện — có thể hiển thị bằng cách bật tùy chọn "Hiển thị tệp và thư mục ẩn" trong File Explorer hoặc dùng lệnh ls -a trong Git Bash.
Thêm và cam kết tệp đầu tiên
Tạo tệp README.md trong thư mục my-project, nội dung đơn giản như:
# Dự án mẫu
Chào mừng đến với kho lưu trữ Git đầu tiên.
Đưa tệp vào staging area bằng:
git add README.md
Rồi cam kết thay đổi với thông điệp rõ ràng:
git commit -m "Khởi tạo README ban đầu"
Cập nhật và cam kết thay đổi
Chỉnh sửa nội dung README.md, ví dụ thay Chào mừng thành Xin chào. Kiểm tra trạng thái bằng:
git status
Dùng git diff để xem chi tiết sự khác biệt, sau đó thêm thay đổi vào staging:
git add README.md
Và cam kết:
git commit -m "Cập nhật tiêu đề và mô tả"
Xem lịch sử cam kết với git log --oneline --graph để hiển thị dạng cây gọn gàng.
Thiết lập khóa SSH cho GitHub
Kiểm tra xem khóa SSH đã tồn tại chưa:
ls -al ~/.ssh
Nếu không thấy cặp tệp id_rsa và id_rsa.pub, chạy lệnh sau (thay email bằng tài khoản GitHub của bạn):
ssh-keygen -t ed25519 -C "your.email@domain.com"
Sau khi tạo xong, sao chép nội dung tệp công khai:
cat ~/.ssh/id_rsa.pub | clip
Thêm khóa vào GitHub
Đăng nhập GitHub → Settings → SSH and GPG keys → New SSH key. Dán nội dung đã sao chép vào ô Key, đặt tên tùy ý ở ô Title. Xác minh kết nối bằng:
ssh -T git@github.com
Nếu thành công, bạn sẽ thấy thông báo: Hi <username>! You've successfully authenticated...
Liên kết và đẩy mã lên kho xa
Tạo kho mới trên GitHub (không cần tích chọn Add a README nếu đã có tệp tương ứng cục bộ). Trên trang kho, sao chép URL SSH (dạng git@github.com:username/repo.git). Quay lại Git Bash, đảm bảo đang ở thư mục my-project, rồi chạy:
git remote add origin git@github.com:username/my-project.git
git push -u origin main
Lưu ý: Từ Git 2.28+, nhánh mặc định thường là main, không phải master.
Kéo về kho từ xa
Nếu muốn làm việc trên một dự án đã tồn tại trên GitHub, chỉ cần:
cd /path/to/your/workspace
git clone git@github.com:username/existing-repo.git
cd existing-repo
Lệnh clone tự động cấu hình remote origin và kéo toàn bộ lịch sử.
Một số lệnh Git thiết yếu
git config --global user.name "Tên bạn"— Thiết lập tên người dùng toàn cụcgit config --global init.defaultBranch main— Đặt nhánh mặc định làmaingit add -A— Thêm tất cả thay đổi (mới, chỉnh sửa, xóa)git commit -m "Mô tả ngắn"— Cam kết với thông điệpgit push origin main— Đẩy nhánhmainlên remotegit pull origin main— Kéo và hợp nhất thay đổi từ remotegit branch -M main— Đổi tên nhánh hiện tại thànhmaingit log --pretty=format:"%h %an %s" --graph— Xem lịch sử dạng đồ họa
Xử lý lỗi phổ biến
Lỗi Everything up-to-date: Thường do thiếu git add hoặc git commit, hoặc thư mục trống. Git không đẩy thư mục rỗng — hãy đảm bảo có ít nhất một tệp được cam kết.
Lỗi refusing to merge unrelated histories: Xảy ra khi cố gắng git pull giữa hai kho không chung gốc. Giải pháp an toàn là dùng:
git pull origin main --allow-unrelated-histories
Sau đó kiểm tra kỹ sự thay đổi trước khi cam kết tiếp.