Kết nối GitHub bằng SSH: Tạo và thêm SSH key
Khi làm việc với GitHub, thay vì phải nhập username và password mỗi lần push/pull, ta có thể dùng SSH key để xác thực an toàn và tiện lợi hơn. Bài viết hướng dẫn quá trình tạo SSH key, thêm vào ssh-agent và cấu hình Git.
1. Tạo SSH key mới
Mở terminal và chạy lệnh sau (thay email bằng email GitHub của bạn):
1
ssh-keygen -t ed25519 -C "quochuy.working@gmail.com"
Nếu hệ thống không hỗ trợ ed25519
, dùng RSA:
1
ssh-keygen -t rsa -b 4096 -C "quochuy.working@gmail.com"
Khi được hỏi Enter a file in which to save the key, nhấn Enter
để lưu ở đường dẫn mặc định (~/.ssh/id_ed25519
).
Nếu đã có key trước đó, bạn có thể đặt tên mới (ví dụ id_ed25519_github
).
Tiếp theo, nhập passphrase để bảo mật key (hoặc để trống nếu muốn).
2. Thêm SSH key vào ssh-agent
Khởi động ssh-agent:
1
eval "$(ssh-agent -s)"
Thêm private key vào ssh-agent:
1
ssh-add ~/.ssh/id_ed25519
3. Thêm public key vào GitHub
Hiển thị public key:
1
cat ~/.ssh/id_ed25519.pub
Copy toàn bộ nội dung, sau đó vào GitHub:
Settings > SSH and GPG keys > New SSH key > Paste key.
4. Kiểm tra kết nối
Clone repo bằng SSH:
1
git clone git@github.com:user_name/repo_name.git
Nếu kết nối thành công, bạn sẽ không cần nhập username/password nữa.
5. Cấu hình Git (user.name & user.email)
Đây là cấu hình để Git ghi nhận ai là tác giả của commit:
1
2
git config --global user.email "quochuy.working@gmail.com"
git config --global user.name "huy-dataguy"
user.email
: email của bạn trên GitHub (hoặc email liên kết commit).user.name
: tên hiển thị trên commit (có thể khác username GitHub, chỉ là nhãn gắn vào commit).