Khi bạn đã khởi tạo một dự án với Git trên máy cục bộ và muốn sao lưu nó lên một nền tảng từ xa như GitHub, hoặc để tạo điều kiện cho sự hợp tác nhóm, bạn cần liên kết kho lưu trữ Git cục bộ với một kho từ xa. Dưới đây là hướng dẫn chi tiết các bước thực hiện quá trình này.
1. Tạo Kho Lưu Trữ Mới Trên GitHub
Đầu tiên, hãy truy cập vào trang web GitHub và đăng nhập vào tài khoản của bạn. Trên thanh điều hướng phía trên bên phải, nhấp vào biểu tượng dấu cộng (+) và chọn mục "New repository".
Tại trang tạo kho lưu trữ mới:
- Đặt tên cho kho lưu trữ của bạn (ví dụ:
du-an-moi). - Chọn Public hoặc Private tùy theo nhu cầu.
- Bạn có thể bỏ qua việc khởi tạo README, .gitignore hoặc License tại bước này vì bạn sẽ đẩy nội dung từ kho cục bộ lên.
- Nhấn nút "Create repository" để hoàn tất.
2. Liên Kết Kho Lưu Trữ Cục Bộ Với Kho Từ Xa
Sau khi kho lưu trữ trên GitHub được tạo, nó sẽ hiển thị các hướng dẫn. Để kết nối kho lưu trữ Git cục bộ của bạn với kho từ xa vừa tạo, hãy mở Terminal hoặc Command Prompt, điều hướng đến thư mục gốc của dự án cục bộ và thực hiện lệnh sau:
git remote add origin git@github.com:YOUR_GITHUB_USERNAME/du-an-moi.git
Lưu ý quan trọng:
- Thay thế
YOUR_GITHUB_USERNAMEbằng tên người dùng GitHub thực tế của bạn. - Thay thế
du-an-moibằng tên kho lưu trữ bạn đã tạo trên GitHub. originlà một tên viết tắt thông thường được gán cho kho lưu trữ từ xa. Bạn hoàn toàn có thể sử dụng một tên khác, nhưngoriginlà quy ước phổ biến được khuyến nghị.
Việc sử dụng đúng tên người dùng GitHub và thiết lập SSH key công khai trên tài khoản GitHub của bạn là rất quan trọng để đảm bảo quá trình xác thực và đẩy mã diễn ra thành công.
3. Đẩy Nội Dung Lên Kho Lưu Trữ Từ Xa Lần Đầu
Sau khi đã thiết lập liên kết kho từ xa, bạn có thể đẩy tất cả các commit từ kho lưu trữ cục bộ lên GitHub. Sử dụng lệnh sau để đẩy nhánh main (hoặc master, tùy thuộc vào nhánh mặc định của dự án bạn) lên kho từ xa origin:
git push -u origin main
Tùy chọn -u (viết tắt của --set-upstream) sẽ thiết lập mối quan hệ theo dõi giữa nhánh cục bộ main và nhánh từ xa origin/main. Điều này có nghĩa là từ những lần đẩy tiếp theo, bạn chỉ cần gõ git push mà không cần chỉ rõ origin main nữa.
Dưới đây là ví dụ về kết quả đầu ra khi bạn đẩy lần đầu tiên:
Counting objects: 8, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (8/8), 730 bytes | 0 bytes/s, done.
Total 8 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), done.
To git@github.com:YOUR_GITHUB_USERNAME/du-an-moi.git
* [new branch] main -> main
Branch 'main' set up to track remote branch 'main' from 'origin'.
Từ những lần đẩy sau đó, bạn chỉ cần sử dụng lệnh đơn giản:
git push
Cảnh Báo Bảo Mật SSH
Khi bạn lần đầu tiên thực hiện các thao tác kết nối với GitHub thông qua SSH (ví dụ: git clone hoặc git push), bạn có thể gặp một cảnh báo như sau:
The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established.
RSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX.
Are you sure you want to continue connecting (yes/no)?
Đây là một biện pháp bảo mật tiêu chuẩn của SSH. Hệ thống đang yêu cầu bạn xác nhận rằng máy chủ bạn đang kết nối (trong trường hợp này là GitHub) là hợp lệ. Bạn chỉ cần gõ yes và nhấn Enter để tiếp tục.
Sau khi xác nhận, Git sẽ ghi lại khóa công khai (public key) của GitHub vào tệp known_hosts trên máy tính của bạn, và bạn sẽ thấy thông báo tương tự:
Warning: Permanently added 'github.com' (RSA) to the list of known hosts.
Cảnh báo này chỉ xuất hiện một lần duy nhất cho mỗi máy chủ SSH mới. Trong các lần kết nối sau, bạn sẽ không còn thấy nó nữa. Nếu bạn có bất kỳ lo ngại nào về tính bảo mật, bạn có thể đối chiếu dấu vân tay được hiển thị với dấu vân tay RSA chính thức của GitHub được công bố trên trang web của họ trước khi nhập yes.