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

Hướng dẫn Git & GitHub: Từ Cơ Bản đến Triển Khai

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

• 4 phút đọc

Chủ đề:

#opensource

Hướng dẫn Git & GitHub: Từ Cơ Bản đến Triển Khai

Giới thiệu

Trong tuần thứ 2 của hành trình học Git và GitHub, tôi đã thực hiện một số nhiệm vụ thực hành để nắm vững các khái niệm cơ bản về quản lý mã nguồn. Bài viết này sẽ hướng dẫn bạn cách thiết lập Git cục bộ, quản lý dự án, khám phá quy trình phân nhánh và cuối cùng là triển khai ứng dụng trên AWS EC2.

Mục lục

Nhiệm vụ 1: Tạo Thư Mục Dự Án Cục Bộ

Bước đầu tiên trong hành trình của tôi là thiết lập một thư mục dự án. Tôi đang sử dụng hệ điều hành Linux nên đã cài đặt Git thông qua trình quản lý gói của mình. Sau đó, tôi đã chạy các lệnh sau để khởi tạo dự án:

bash Copy
mkdir CodeTrack
cd CodeTrack
git init

Lệnh này đã tạo ra một thư mục mới có tên CodeTrack và biến nó thành một kho lưu trữ Git.

Nhiệm vụ 2: Cấu Hình Git Cục Bộ

Tiếp theo, tôi đã cấu hình Git để nhận diện tôi trong kho lưu trữ này:

bash Copy
git config --local user.name "Okeke Christian"
git config --local user.email "eceokekechima@gmail.com"
git config --local --list

Điều này đảm bảo rằng tất cả các commit trong dự án này đều được gán cho tên và email của tôi.

Khi nào nên sử dụng cấu hình Cục bộ vs Toàn cục?

  • Cấu hình toàn cục: Áp dụng cho tất cả các kho lưu trữ.
  • Cấu hình cục bộ: Ghi đè lên cài đặt toàn cục cho một kho lưu trữ cụ thể (hữu ích khi bạn làm việc trên nhiều dự án với các danh tính khác nhau).

Bước 1: Xác minh cài đặt Git

Tôi đã kiểm tra phiên bản Git của mình để xác nhận việc cài đặt:

bash Copy
git --version

Kết quả: 2.34.1

Nhiệm vụ 3: Tạo & Chỉnh Sửa Tệp

Tôi đã tạo một số tệp khởi đầu:

bash Copy
touch index.html style.css

Sau đó, tôi mở chúng bằng Visual Studio Code, sao chép nội dung ban đầu từ một kho lưu trữ GitHub.

Nhiệm vụ 4: Quy Trình Phân Nhánh (Thêm Trang Liên Hệ)

Một trong những phần tốt nhất của Git là khả năng phân nhánh. Tôi đã tạo một nhánh tính năng để thêm một Trang Liên Hệ:

bash Copy
git checkout -b feature/contact-page
touch contact.html
git add contact.html
git commit -m "feat(contact): add contact page with email and phone"

Tôi cũng đã cập nhật index.html để bao gồm một liên kết đến contact.html, sau đó đã commit các thay đổi. Sau khi quay lại nhánh chính, tôi đã xác nhận rằng liên kết không xuất hiện cho đến khi tôi thực hiện thao tác hợp nhất nhánh.

bash Copy
git checkout main
git merge feature/contact-page

Bài học rút ra: Các thay đổi trong một nhánh tính năng sẽ vẫn tách biệt cho đến khi được hợp nhất vào nhánh chính.

Nhiệm vụ 5: Triển Khai trên AWS EC2

Tôi đã triển khai trang web tĩnh của mình trên một phiên bản AWS EC2 với Nginx.

Các bước bao gồm:

  1. Khởi động EC2 (Ubuntu).
  2. SSH vào phiên bản:
    bash Copy
    ssh -i "cc-key.pem" ubuntu@<your-ec2-ip>
  3. Cài đặt Nginx và khởi động dịch vụ.
  4. Sao chép các tệp dự án (index.html, style.css, contact.html) vào thư mục web của Nginx.
  5. Truy cập trang web qua trình duyệt bằng địa chỉ IP công khai của EC2.

Cấu Hình Hồ Sơ GitHub

Tôi đã cập nhật hồ sơ GitHub của mình với một tiểu sử chuyên nghiệp:

Network Engineer | Cloud & DevOps Enthusiast | Learning Git & GitHub

Tôi cũng đã thêm ảnh đại diện và địa điểm của mình.

Tại sao điều này quan trọng?

Một hồ sơ GitHub chuyên nghiệp hoạt động như một danh mục trực tiếp — thể hiện các dự án thực tế, phong cách lập trình và kỹ năng hợp tác. Điều này tạo dựng uy tín với nhà tuyển dụng và các cộng tác viên.

Quy Trình Forking & Pull Request

Cuối cùng, tôi đã thực hành đóng góp vào một kho lưu trữ mã nguồn mở (mini_finance):

  • Fork kho lưu trữ.
  • Clone nó về cục bộ và thiết lập xác thực SSH.
  • Tạo một nhánh mới feature-readme-update.
  • Cập nhật README.md với các ghi chú từ bài tập.
  • Đẩy các thay đổi và mở một Pull Request.

Tại sao một PR lại quan trọng?

Một Pull Request không chỉ đơn thuần là hợp nhất mã — nó còn liên quan đến hợp tác, đánh giá mã và chia sẻ kiến thức.

Kết Luận

  • Cấu hình Git cục bộ và toàn cục giúp quản lý danh tính giữa các dự án.
  • Phân nhánh giữ cho các tính năng tách biệt cho đến khi được hợp nhất.
  • GitHub không chỉ là nơi lưu trữ — nó còn là danh mục của bạn.
  • Triển khai trên EC2 mang lại trải nghiệm thực tế về DevOps.
  • Pull Requests khuyến khích làm việc nhóm và thực hành mã sạch.
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