0
0
Lập trình
Hưng Nguyễn Xuân 1
Hưng Nguyễn Xuân 1xuanhungptithcm

Hướng Dẫn Toàn Diện Về Git & GitHub Cho Người Mới Bắt Đầu

Đăng vào 7 tháng trước

• 4 phút đọc

Chủ đề:

#github#git

Giới thiệu

Trong bài viết này, bạn sẽ tìm hiểu những lệnh GitHub cơ bản nhất mà bạn cần trong cuộc sống hàng ngày với tư cách là một lập trình viên. Chúng ta sẽ bắt đầu bằng cách tạo một kho lưu trữ trên hệ thống cục bộ của bạn và sau đó tiến hành tạo và gộp các nhánh trên GitHub.


Mục Lục

  1. Kết nối tài khoản GitHub từ xa với hệ thống cục bộ
  2. Tạo kho lưu trữ đầu tiên và kết nối với GitHub
  3. Lệnh Git cơ bản: Add, Commit và Push
  4. Sử dụng lệnh git pull
  5. Tập tin .gitignore là gì?
  6. Tạo, chỉnh sửa, đẩy, gộp và xóa nhánh
  7. Thực tiễn tốt nhất và mẹo hiệu suất
  8. Câu hỏi thường gặp

Kết nối tài khoản GitHub từ xa với hệ thống cục bộ {#ket-noi-tai-khoan-github}

  1. Tạo tài khoản GitHub.
  2. Cài đặt Git trên hệ thống của bạn.
  3. Chạy lệnh SSH sau:
bash Copy
ssh-keygen -t ed25519 -C "your_email@example.com"

Tiếp tục nhấn "Enter" và các khóa ssh của bạn sẽ được tạo.

  1. Mở tệp C:/Users/John/.ssh/id_ed25519.pub và sao chép toàn bộ văn bản có trong đó.
  2. Mở tài khoản GitHub của bạn > Cài đặt > SSH và GPG keys. Nhấn vào New SSH Key.
  3. Thêm khóa ssh công khai mà bạn đã sao chép vào đây và lưu lại.
  4. Thiết lập tên, email và tên người dùng bằng các lệnh sau trên thiết bị cục bộ của bạn:
bash Copy
git config --global user.email "Your email"
git config --global user.name "Your Name"

Tạo kho lưu trữ đầu tiên và kết nối với GitHub {#tao-kho-luu-tru}

Tạo kho lưu trữ cục bộ của bạn bằng cách chạy lệnh sau:

bash Copy
# Tạo kho lưu trữ với nhánh mặc định 'master'
git init

# Tạo kho lưu trữ với tên nhánh tùy chỉnh:
git init -b main

Sao chép URL SSH/HTTPS của kho lưu trữ và chạy lệnh sau trong thư mục kho lưu trữ mới của bạn:

bash Copy
git remote add origin your-repository-url

Xem tất cả các origin từ xa đã thêm:

bash Copy
git remote -v

Lệnh Git cơ bản: Add, Commit và Push {#lenh-git-co-ban}

bash Copy
# Thêm tất cả các thay đổi vào khu vực staging:
git add . 
# HOẶC
git add filename1 filename2 ...

# Cam kết tất cả các thay đổi cục bộ:
git commit -m "commit message" 
# HOẶC
git commit -m "commit message" -m "[TÙY CHỌN] Mô tả về commit"

# Đẩy tất cả các thay đổi lên GitHub:
git push origin main 
# HOẶC
git push origin custom_branch_name

Hủy bỏ thay đổi

bash Copy
# Hủy bỏ thay đổi trong thư mục làm việc sau commit cuối
git restore <file>

# Hủy bỏ thay đổi đã staging.
git restore --staged <file>

# Đặt lại tất cả các tệp được theo dõi trong thư mục hiện tại về commit cuối.
git reset .

# Đặt lại HEAD của dự án của chúng ta bằng một commit
git reset HEAD~1

Sử dụng lệnh git pull {#su-dung-lenh-git-pull}

Giả sử có hai người, Người ANgười B đang làm việc trên một kho lưu trữ từ hai máy tính khác nhau. Người A thực hiện một số thay đổi trong mã nguồn và đẩy nó lên GitHub. Giờ đây, Người B cần cập nhật mã trong hệ thống của họ với mã mới, nếu không sẽ xuất hiện xung đột. Quá trình cập nhật mã cũ hiện có trong hệ thống cục bộ của bạn với mã mới hiện có trong kho lưu trữ GitHub từ xa được thực hiện bằng cách sử dụng lệnh sau:

bash Copy
git pull origin main 
# HOẶC
git pull origin custom_branch_name

Khái niệm về git pull:

Nó lấy mã mới nhất từ kho lưu trữ từ xa và sau đó gộp chúng vào nhánh hiện tại của bạn.
git pull = git fetch + git merge


Tập tin .gitignore là gì? {#tap-tin-gitignore}

Bất kỳ tệp hoặc thư mục nào mà lập trình viên không muốn cam kết và công bố trên GitHub cần được liệt kê ở đây.

Dưới đây là một ví dụ ngắn về tệp .gitignore:

bash Copy
# Bỏ qua node_modules
node_modules/

# Bỏ qua bí mật
.env

# Bỏ qua thư mục cache
pycache/

Kiểm tra các mẫu gitignore được thiết kế sẵn từ GitHub.


Tạo, chỉnh sửa, đẩy, gộp và xóa nhánh {#tao-chinh-sua-nhanh}

Xem nhánh hiện tại và danh sách các nhánh có trên hệ thống cục bộ của bạn:

bash Copy
git branch

Tạo một nhánh mới:

bash Copy
git branch new_branch_name

Chuyển sang nhánh mới:

bash Copy
git switch branch_name

Đẩy nhánh của bạn lên từ xa:

bash Copy
git push origin new_branch_name

Xóa một nhánh từ hệ thống cục bộ:

bash Copy
# Xóa nhánh đã được gộp hoàn toàn cục bộ
git branch -d branch_name

# Xóa nhánh (ngay cả khi chưa gộp) cục bộ
git branch -D branch_name

# Xóa một nhánh từ kho lưu trữ từ xa
git push origin --delete branch_name

Lấy một nhánh cụ thể về hệ thống cục bộ:

bash Copy
git fetch origin <branch_name>:<branch_name>

Gộp nhánh của bạn vào một nhánh khác:

Giả sử bạn muốn gộp các thay đổi từ branchA sang branchB:

  1. Chuyển sang branchB.
  2. Chạy lệnh sau:
bash Copy
git merge branchA

Thực tiễn tốt nhất và mẹo hiệu suất {#thuc-tien-tot-nhat}

  • Sử dụng commit nhỏ: Khi thực hiện thay đổi, hãy cam kết từng thay đổi nhỏ một để dễ dàng theo dõi và khôi phục nếu cần.
  • Thường xuyên đẩy thay đổi: Hãy đảm bảo rằng bạn thường xuyên đẩy các thay đổi lên GitHub để tránh xung đột.
  • Tạo nhánh cho từng tính năng: Sử dụng các nhánh riêng biệt cho từng tính năng hoặc bản sửa lỗi để giữ cho mã nguồn chính luôn sạch sẽ.

Câu hỏi thường gặp {#cau-hoi-thuong-gap}

Q: Làm thế nào để khôi phục một commit cũ?
A: Bạn có thể sử dụng lệnh git checkout <commit_hash> để chuyển về một commit cụ thể.

Q: Tại sao tôi không thể xóa nhánh đang hoạt động?
A: Bạn không thể xóa nhánh hiện tại. Bạn cần chuyển sang một nhánh khác trước khi thực hiện xóa.


Khi bạn đã nắm vững những lệnh và khái niệm này, bạn có thể khám phá những khái niệm nâng cao hơn như rebasing, stashing và giải quyết xung đột.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào