Kết Nối với Kho Lưu Trữ Từ Xa (GitHub)
Để làm việc với GitHub, bạn cần tạo một cặp khóa SSH và xác thực kết nối.
// Tạo một cặp khóa SSH mới
ssh-keygen -t rsa -C "dia_chi_email_cua_ban_tren_github"
// Kiểm tra xem kết nối đã được thiết lập thành công chưa
ssh -T git@github.com
Lưu Trữ Thông Tin Đăng Nhập
Cấu hình Git để tự động lưu thông tin đăng nhập, giúp bạn không cần nhập lại mật khẩu mỗi lần.
git config --global credential.helper store
Cấu Hình Thông Tin Người Dùng
Đặt tên và email của bạn, thông tin này sẽ được gắn với mọi lần commit.
// Đặt tên người dùng
git config --global user.name "ten_nguoi_dung_cua_ban"
// Đặt email
git config --global user.email "email_cua_ban@example.com"
// Xem tất cả các cấu hình hiện tại
git config --list
Khởi Tạo Một Kho Lưu Trữ Git
Lệnh này tạo ra một thư mục ẩn `.git` trong dự án của bạn, kích hoạt hệ thống kiểm soát phiên bản.
git init
Kiểm Tra Trạng Thái Tệp
Lệnh `git status` cho bạn biết những thay đổi nào đã được thực hiện trong thư mục làm việc.
git status
Tệp được hiển thị bằng màu đỏ nghĩa là chúng nằm trong thư mục làm việc (working directory) và chưa được thêm vào khu vực tạm存 (staging area). Tệp màu xanh lá cây đã được thêm vào staging area nhưng chưa được commit vào kho lưu trữ (repository).
Quay Lại Phiên Bản
Để khôi phục một phiên bản trước đó, bạn cần ID của commit đó.
// Khôi phục về một commit cụ thể
git reset --hard ma_hoa_phien_ban
// Xem lịch sử commit để lấy ID
git log
// Xem lịch sử tất cả các thao tác (bao gồm cả reset)
git reflog
Quản Lý Kho Lưu Trữ Từ Xa
Quản lý các kết nối đến kho lưu trữ từ xa như GitHub.
// Xem tất cả các kho lưu trữ từ xa đã được cấu hình
git remote -v
// Thêm một kho lưu trữ từ xa mới
git remote add ten_kho_luu_tru_xa dia_chi_git_cua_kho
// Xóa một kết nối kho lưu trữ từ xa
git remote remove ten_kho_luu_tru_xa
Thêm Tệp vào Khu Vực Tạm存
Trước khi commit, bạn cần thêm các thay đổi vào staging area.
// Thêm một tệp cụ thể
git add ten_tep
// Thêm tất cả các tệp đã thay đổi
git add .
// Thêm tất cả các tệp, bao gồm cả các tệp đã xóa
git add -A
Commit Thay Đổi vào Kho Lưu Trữ
Đưa các thay đổi từ staging area vào repository.
// Commit với một thông báo ngắn
git commit -m "thong_tin_ghi_chu_ngan"
// Commit và mở trình soạn thảo để nhập thông báo chi tiết
git commit
Commit Nhanh (Cho Tệp Đã Theo Dõi)
Lệnh này thêm tất cả các tệp đã được theo dõi vào staging area và commit chúng cùng một lúc.
git commit -a -m "thong_tin_ghi_chu"
Đẩy Thay Đổi Lên Kho Lưu Trữ Từ Xa
Gửi các thay đổi cục bộ lên kho lưu trữ từ xa.
git push ten_kho_luu_tru_xa ten_nhom
// Ví dụ: git push origin master
Lấy Thay Đổi Từ Kho Lưu Trữ Từ Xa
Tải các thay đổi từ kho lưu trữ từ xa về máy cục bộ.
git pull ten_kho_luu_tru_xa ten_nhom
// Ví dụ: git pull origin master
Xem Sự Khác Biệt
So sánh các thay đổi giữa các khu vực khác nhau.
// So sánh thư mục làm việc với staging area
git diff
// So sánh staging area với repository
git diff --cached
// So sánh thư mục làm việc với một nhánh cụ thể
git diff ten_nhom
Quản Lý Nhánh (Branch)
Nhánh cho phép bạn phát triển các tính năng riêng biệt.
// Xem tất cả các nhánh
git branch
// Tạo một nhánh mới
git branch ten_nhom_moi
// Chuyển sang một nhánh khác
git checkout ten_nhom
// Tạo và chuyển sang nhánh mới cùng một lúc
git checkout -b ten_nhom_moi
// Tạm lưu các thay đổi chưa commit khi chuyển nhánh
git stash
// Khôi phục các thay đổi đã tạm lưu
git stash pop
// Xóa một nhánh (chỉ khi đã chuyển sang nhánh khác)
git branch -D ten_nhom
// Hợp nhất một nhánh vào nhánh hiện tại
git merge ten_nhom_can_hop_nhat