tinbc tinbc

Git và GitHub cho người mới: đưa dự án đầu tiên lên GitHub

Thợ Code6 phút đọc
Git và GitHub cho người mới: đưa dự án đầu tiên lên GitHub

Bạn đã hiểu Git là gì nhưng khi bắt tay vào thực tế lại lúng túng: làm sao đưa thư mục code của mình lên GitHub cho người khác xem, hoặc đơn giản là để sao lưu an toàn? Bài này dẫn bạn đi trọn một vòng — từ cài đặt, tạo kho trên GitHub, đến các lệnh đưa dự án đầu tiên lên — và giải thích mỗi lệnh làm gì để bạn không chỉ gõ theo mà còn hiểu.

🎯 Mục tiêu bài học: đưa một thư mục dự án trên máy bạn lên thành một kho (repository) trên GitHub, qua đúng chuỗi lệnh: initaddcommitpush.

Git và GitHub: phân biệt cho rõ

Nhiều người mới nhầm hai thứ này là một. Thực ra:

  • Git = phần mềm chạy trên máy bạn, ghi lại lịch sử thay đổi của code (ai sửa gì, khi nào, có thể quay lại bản cũ).
  • GitHub = website lưu trữ các kho Git trên mạng, để bạn sao lưu, chia sẻ và làm việc nhóm.

Ví von: Git giống như tính năng “lịch sử phiên bản” cho code; GitHub là “đám mây” để cất lịch sử đó và cho người khác xem. Bài này giả định bạn đã nắm khái niệm Git — nếu chưa, đọc Git là gì: hướng dẫn cơ bản trước.

Chuẩn bị: cài Git và tạo tài khoản GitHub

1. Cài Git. Tải Git tại trang chính thức git-scm.com và cài đặt (Windows/macOS/Linux đều có). Kiểm tra đã cài xong bằng cách mở Terminal (hoặc Git Bash trên Windows) và gõ:

git --version

Nếu hiện ra số phiên bản (ví dụ git version 2.x.x) là thành công.

2. Khai báo tên và email (Git gắn thông tin này vào mỗi lần commit — chỉ cần làm một lần):

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

3. Tạo tài khoản GitHub miễn phí tại github.com nếu chưa có.

Bước 1: Tạo kho (repository) trên GitHub

  1. Đăng nhập GitHub, bấm nút New (hoặc dấu + góc trên phải → New repository).
  2. Đặt tên kho (ví dụ du-an-dau-tien).
  3. Chọn Public (ai cũng xem được) hoặc Private (chỉ mình bạn) — xem khác biệt ở phần Hỏi–Đáp.
  4. Chưa cần tích “Add a README” nếu bạn sắp đẩy code có sẵn lên (tránh xung đột lúc đầu).
  5. Bấm Create repository. GitHub sẽ hiện một trang có sẵn địa chỉ kho (URL) — để đó, ta dùng ở bước cuối.

Bước 2: Biến thư mục dự án thành kho Git

Mở Terminal, di chuyển vào thư mục dự án của bạn rồi khởi tạo Git:

cd duong-dan/toi/du-an       # vào thư mục dự án
git init                      # tạo kho Git trong thư mục này

💡 Chưa biết điền gì sau cd? Cách nhanh: gõ cd (có dấu cách) rồi kéo-thả thư mục dự án vào cửa sổ Terminal — đường dẫn tự điền. Trên Windows đường dẫn có dạng C:\Users\Ban\du-an.

git init tạo một thư mục ẩn .git — đây là nơi Git lưu toàn bộ lịch sử. Từ giờ thư mục này đã được Git “theo dõi”.

Bước 3: add và commit — lưu ảnh chụp đầu tiên

Hai lệnh cốt lõi của Git:

git add .                     # đưa TẤT CẢ file vào "khu vực chờ" (staging)
git status                    # (tuỳ chọn) kiểm tra xem đã add đúng file chưa
git commit -m "Commit đầu tiên"   # lưu lại thành một mốc lịch sử

Giải thích:

  • git add . đánh dấu các file bạn muốn lưu (dấu . nghĩa là “mọi file trong thư mục”). Bước này gọi là đưa vào staging — như xếp đồ vào giỏ trước khi tính tiền.
  • git commit -m "..." “chốt” các file đã add thành một mốc lịch sử kèm lời nhắn mô tả. Mỗi commit là một ảnh chụp trạng thái dự án tại thời điểm đó.

💡 Mẹo: lời nhắn commit nên ngắn gọn, mô tả bạn đã làm gì (“Thêm trang chủ”, “Sửa lỗi đăng nhập”) để sau này dễ tra lịch sử.

Bước 4: Kết nối và push lên GitHub

Bây giờ nối kho trên máy với kho trên GitHub và đẩy code lên. Dùng URL kho mà GitHub đã hiện ở Bước 1:

git remote add origin https://github.com/ten-ban/du-an-dau-tien.git
git branch -M main            # đặt tên nhánh chính là "main"
git push -u origin main       # đẩy code lên GitHub

Giải thích:

  • git remote add origin ... cho Git biết “kho trên mạng” nằm ở đâu; origin là tên gọi tắt cho URL đó.
  • git push -u origin main đẩy các commit từ máy bạn lên nhánh main trên GitHub. Lần đầu push, GitHub sẽ yêu cầu đăng nhập/xác thực.

Xong! Tải lại trang kho trên GitHub, bạn sẽ thấy toàn bộ file của mình đã ở đó.

🔑 Về xác thực (bước hay kẹt nhất): GitHub không cho dùng mật khẩu tài khoản khi push qua HTTPS — bạn phải dùng Personal Access Token (PAT). Cách tạo: trên GitHub vào Settings → Developer settings → Personal access tokens → Generate new token, tích quyền (scope) repo, tạo xong copy token ngay vì nó chỉ hiện một lần. Khi Terminal hỏi Password lúc push, hãy dán token vào (nhiều Terminal không hiển thị ký tự khi dán — cứ dán rồi Enter). Không tích repo thì push sẽ vẫn bị từ chối.

Vòng lặp làm việc hằng ngày

Sau lần đầu, mỗi khi sửa code và muốn cập nhật lên GitHub, bạn chỉ lặp lại ba lệnh:

git add .
git commit -m "Mô tả thay đổi"
git push

Nhớ thứ tự: sửa code → add → commit → push. Đây là nhịp làm việc bạn sẽ dùng mãi.

Lỗi thường gặp & cách xử lý

  • git: command not found → chưa cài Git hoặc chưa mở lại Terminal sau khi cài. Cài lại và mở cửa sổ Terminal mới.
  • Push bị từ chối, đòi mật khẩu → dùng Personal Access Token thay mật khẩu (xem ô 🔑 ở trên).
  • remote origin already exists → bạn đã thêm remote rồi. Kiểm tra bằng git remote -v; nếu sai URL, sửa bằng git remote set-url origin <URL-đúng>.
  • Lỡ commit file nhạy cảm (mật khẩu, khóa API) → xóa nó và dùng file .gitignore để Git bỏ qua các file không nên đưa lên. Với kho public, hãy coi như thông tin đã lộ và đổi ngay khóa đó.
  • Đẩy nhầm file rác/thư mục nặng (như node_modules) → tạo file .gitignore liệt kê những gì cần bỏ qua trước khi add.

Tóm lại

Đưa dự án lên GitHub chỉ gồm một chuỗi lệnh có logic rõ ràng: git init (tạo kho) → git add (chọn file) → git commit (lưu mốc) → nối remotegit push (đẩy lên mạng). Hiểu mỗi lệnh làm gì một lần là bạn nắm được nhịp làm việc cốt lõi, và từ đó mở ra cả thế giới cộng tác mã nguồn mở. Bước tiếp theo đáng học là làm việc với nhánh (branch)pull request để cộng tác nhóm — nhưng trước hết, hãy đưa được dự án đầu tiên của bạn lên GitHub đã. Nếu bạn đang tự học lập trình, xem thêm lộ trình tự học lập trình từ con số 0.

Chia sẻ:
0.0 0 lượt đánh giá

Câu hỏi thường gặp

Git và GitHub khác nhau thế nào?

Git là phần mềm quản lý phiên bản chạy trên máy bạn — nó theo dõi thay đổi của code theo thời gian. GitHub là một dịch vụ trực tuyến để lưu trữ các kho Git (repository) trên mạng, giúp bạn sao lưu, chia sẻ và cộng tác. Nói ngắn gọn: Git là công cụ, GitHub là nơi cất và chia sẻ. Bạn có thể dùng Git mà không cần GitHub, nhưng GitHub cần Git để hoạt động.

Tôi có cần biết dòng lệnh mới dùng được GitHub không?

Không bắt buộc. GitHub có giao diện web và ứng dụng GitHub Desktop cho phép thao tác bằng chuột, phù hợp người mới. Tuy nhiên, hiểu vài lệnh Git cơ bản (init, add, commit, push) rất đáng học vì nó giúp bạn kiểm soát tốt hơn và là kỹ năng chuẩn trong nghề lập trình. Bài này dùng dòng lệnh vì đây là cách nền tảng và dùng được ở mọi nơi.

Kho công khai (public) và riêng tư (private) trên GitHub khác gì nhau?

Kho công khai (public) ai cũng xem được code của bạn — hợp để chia sẻ, xây hồ sơ cá nhân, hoặc dự án mã nguồn mở. Kho riêng tư (private) chỉ bạn và người được mời mới thấy — hợp cho code cá nhân, bài tập, hay dự án chưa muốn công khai. GitHub cho tạo cả hai loại miễn phí. Lưu ý: đừng bao giờ đưa mật khẩu, khóa API hay thông tin nhạy cảm lên kho công khai.

Thợ Code

Thợ Code

Thợ code chính hiệu, thích dắt người mới qua mấy đoạn 'khó nhằn' bằng giọng nhẹ tênh. Châm ngôn: cứ làm dự án thật, sai thì sửa, vui là chính.

Bài liên quan

Bài 11: Module và thư viện chuẩn trong Python
Lập trình

Bài 11: Module và thư viện chuẩn trong Python

Bài 11 series Python cho người mới (bài học 30 phút): dùng module và thư viện chuẩn — import math, random, datetime — và tự tách code thành module riêng để tái dùng; kèm bài tập và code mang về.

Bài 10: Đọc và ghi file trong Python
Lập trình

Bài 10: Đọc và ghi file trong Python

Bài 10 series Python cho người mới (bài học 30 phút): đọc và ghi file văn bản — lưu dữ liệu ra file, đọc lại, ghi thêm — dùng with open và encoding UTF-8 cho tiếng Việt; kèm bài tập và code mang về.