Git – Cách sử dụng các lệnh GitHub

GitHub là một nền tảng lưu trữ mã nguồn dựa trên Git, cung cấp nhiều tính năng như quản lý mã nguồn, hợp tác nhóm, theo dõi lỗi và nhiều công cụ phát triển khác. Khi sử dụng GitHub, bạn thường tương tác với nó qua Git thông qua dòng lệnh hoặc giao diện người dùng. Dưới đây là hướng dẫn cơ bản về cách sử dụng các lệnh Git để tương tác với GitHub.

1. Cloning a Repository (Nhân bản kho lưu trữ)

Lệnh git clone được sử dụng để sao chép một repository từ GitHub về máy tính của bạn.

git clone <URL của repository>

Ví dụ:

git clone https://github.com/username/repository.git

2. Adding Files (Thêm tệp vào chỉ mục)

Khi bạn tạo hoặc thay đổi tệp trong thư mục làm việc, bạn cần thêm nó vào chỉ mục để chuẩn bị cho việc commit.

git add <tên-tệp>

Thêm tất cả các thay đổi:

git add .

3. Committing Changes (Commit thay đổi)

Lệnh git commit được sử dụng để lưu lại các thay đổi đã được thêm vào chỉ mục. Mỗi commit nên có một thông điệp mô tả rõ ràng.

git commit -m "Thông điệp commit"

4. Pushing Changes (Đẩy thay đổi lên GitHub)

Sau khi commit, bạn cần đẩy các thay đổi này lên GitHub để chúng xuất hiện trên repository trực tuyến.

git push origin <tên-nhánh>

Ví dụ, nếu bạn đang làm việc trên nhánh main:

git push origin main

5. Pulling Changes (Kéo thay đổi từ GitHub về máy)

Lệnh git pull được sử dụng để cập nhật repository trên máy tính của bạn với những thay đổi mới nhất từ GitHub.

git pull origin <tên-nhánh>

Ví dụ:

git pull origin main

6. Creating a New Branch (Tạo nhánh mới)

Bạn có thể tạo một nhánh mới để phát triển tính năng hoặc sửa lỗi.

git checkout -b <tên-nhánh>

7. Merging Branches (Hợp nhất các nhánh)

Khi hoàn thành công việc trên một nhánh, bạn có thể hợp nhất nó vào nhánh chính.

git checkout main  # Chuyển về nhánh chính
git merge <tên-nhánh-phụ>  # Hợp nhất nhánh phụ vào nhánh chính

8. Resolving Conflicts (Giải quyết xung đột)

Xung đột xảy ra khi hai người thay đổi cùng một phần của một tệp và cả hai thay đổi này không thể tự động hợp nhất. Bạn cần chỉnh sửa tệp để giải quyết xung đột, sau đó commit lại các thay đổi.

9. Forking a Repository (Fork repository)

Forking là việc sao chép một repository từ người khác vào tài khoản GitHub của bạn. Bạn có thể thực hiện việc này thông qua giao diện web của GitHub.

10. Creating a Pull Request (Tạo Pull Request)

Khi bạn muốn hợp nhất các thay đổi của mình vào repository gốc (thường là repository mà bạn đã fork), bạn tạo một Pull Request (PR). Bạn có thể thực hiện việc này thông qua giao diện web của GitHub.

11. Stashing Changes (Lưu trữ tạm thời các thay đổi)

Nếu bạn muốn lưu các thay đổi chưa commit nhưng không muốn commit chúng ngay lập tức, bạn có thể sử dụng lệnh git stash.

git stash

Khi bạn muốn áp dụng lại các thay đổi đã lưu:

git stash pop

12. Inspecting Changes (Kiểm tra các thay đổi)

Lệnh git status hiển thị trạng thái của thư mục làm việc và chỉ mục, giúp bạn biết được những tệp nào đã thay đổi, những tệp nào chưa được thêm vào chỉ mục, v.v.

git status

Lệnh git diff cho phép bạn xem các thay đổi chi tiết giữa các commit, giữa thư mục làm việc và chỉ mục, hoặc giữa các nhánh.

git diff

13. Deleting a Branch (Xóa nhánh)

Nếu không cần nhánh nào đó nữa, bạn có thể xóa nó bằng lệnh:

git branch -d <tên-nhánh>

Nếu nhánh chưa được hợp nhất và bạn muốn xóa nó:

git branch -D <tên-nhánh>

14. Configuring Git (Cấu hình Git)

Bạn có thể cấu hình Git với tên và email của bạn, thông tin này sẽ đi kèm với các commit bạn tạo ra.

git config --global user.name "Tên của bạn"
git config --global user.email "[email protected]"

15. Tagging a Commit (Gắn thẻ cho một commit)

Tags thường được sử dụng để đánh dấu một điểm cụ thể trong lịch sử, chẳng hạn như phát hành phiên bản.

git tag <tên-tag>

16. Removing Files (Xóa tệp khỏi Git)

Nếu bạn muốn xóa một tệp khỏi Git nhưng vẫn giữ nó trên máy tính của bạn:

git rm --cached <tên-tệp>

Nếu bạn muốn xóa tệp khỏi Git và cả thư mục làm việc của bạn:

git rm <tên-tệp>