Git & GitHub Mastery: From Zero to Pro
Khóa học Git & GitHub đầy đủ cho sinh viên FPT Polytechnic
📚 Giới thiệu
Đây là series 15 bài học về Git & GitHub từ cơ bản đến nâng cao, được thiết kế đặc biệt cho sinh viên đại học đang học Web Development.
🎯 Mục tiêu khóa học
Sau khi hoàn thành khóa học này, bạn sẽ:
- ✅ Nắm vững Git cơ bản và nâng cao
- ✅ Thành thạo GitHub và làm việc nhóm
- ✅ Áp dụng GitHub Flow trong dự án thực tế
- ✅ Viết commit message chuyên nghiệp
- ✅ Xử lý conflict và các lỗi thường gặp
- ✅ Phát hành version và tạo release
📖 Danh sách bài học
| STT | File | Chủ đề | Mô tả ngắn |
|---|---|---|---|
| 01 | 01-intro-to-git.md | Giới thiệu về Git và Version Control | Tìm hiểu Git là gì, tại sao cần dùng, và khác biệt với GitHub |
| 02 | 02-install-config.md | Cài đặt & cấu hình Git | Hướng dẫn cài đặt Git trên Windows, macOS, Linux và cấu hình cơ bản |
| 03 | 03-git-basic-commands.md | Các lệnh cơ bản | Học init, add, commit, status, log - workflow cơ bản |
| 04 | 04-working-directory.md | Hiểu Working Directory và Staging Area | Nắm rõ 3 khu vực: Working Directory, Staging Area, Repository |
| 05 | 05-git-branching.md | Làm việc với Branch | Tạo, quản lý branch, merge branch - nền tảng cho teamwork |
| 06 | 06-merge-vs-rebase.md | Merge và Rebase | Phân biệt merge vs rebase, khi nào dùng cái nào, xử lý conflict |
| 07 | 07-github-intro.md | Giới thiệu GitHub | Tạo tài khoản, repository, kết nối local với GitHub |
| 08 | 08-collaboration.md | Làm việc nhóm với GitHub | Clone, fork, push, pull - workflow làm việc nhóm cơ bản |
| 09 | 09-github-flow.md | GitHub Flow | Quy trình teamwork chuẩn: branch → develop → PR → merge |
| 10 | 10-pull-request.md | Pull Request và Review Code | Tạo PR chuyên nghiệp, review code, xử lý conflict trong PR |
| 11 | 11-commit-best-practices.md | Commit Message Best Practices | Conventional Commits, viết commit message chuyên nghiệp |
| 12 | 12-git-advanced.md | Git Nâng cao | Stash, revert, reset, cherry-pick - các lệnh nâng cao |
| 13 | 13-common-errors.md | Lỗi thường gặp và khắc phục | Tổng hợp lỗi phổ biến và cách xử lý, phòng tránh |
| 14 | 14-git-tag-release.md | Tag và phát hành phiên bản | Semantic versioning, tạo tag, release trên GitHub |
| 15 | 15-mini-project.md | Mini Project | Dự án cuối khóa: Làm việc nhóm theo GitHub Flow |
| 16 | 16-resolving-conflicts-teamwork.md | Resolve Conflict trong Teamwork | Hướng dẫn chi tiết resolve conflict với nhiều case thực tế |
🚀 Bắt đầu học
Yêu cầu tiên quyết
- Biết sử dụng terminal/command line cơ bản
- Có tài khoản GitHub (sẽ hướng dẫn ở bài 2)
- Máy tính có kết nối internet
Cách học hiệu quả
- Học tuần tự: Làm theo thứ tự bài 01 → 15
- Thực hành ngay: Mỗi bài có ví dụ và bài tập, hãy làm theo
- Làm bài tập: Level 1 bắt buộc, Level 2 khuyến khích
- Ghi chú: Viết lại những gì học được
- Áp dụng: Dùng ngay vào dự án của bạn
📝 Cấu trúc mỗi bài
Mỗi bài học gồm:
- 🎯 Mục tiêu học tập: Bạn sẽ học được gì
- 📘 Kiến thức lý thuyết: Giải thích rõ ràng với ví dụ thực tế
- 💻 Ví dụ thực hành: Command và kết quả minh họa
- 🧩 Bài tập:
- Level 1: Cơ bản (bắt buộc)
- Level 2: Nâng cao (khuyến khích)
- 💡 Mẹo & Lỗi thường gặp: 3-5 lỗi phổ biến và cách tránh
🎓 Lộ trình học
Tuần 1-2: Git Cơ bản (Bài 01-04)
- Hiểu Git và Version Control
- Cài đặt và cấu hình
- Làm việc với commit và staging area
Tuần 3-4: Branch và Merge (Bài 05-06)
- Làm việc với branch
- Merge và rebase
Tuần 5-6: GitHub (Bài 07-08)
- Làm việc với GitHub
- Clone, fork, push, pull
Tuần 7-8: GitHub Flow (Bài 09-10)
- Quy trình teamwork chuẩn
- Pull Request và code review
Tuần 9-10: Best Practices (Bài 11-12)
- Commit message chuyên nghiệp
- Git nâng cao
Tuần 11-12: Thực hành (Bài 13-15)
- Xử lý lỗi
- Tag và release
- Dự án cuối khóa
📚 Tài nguyên bổ sung
- Git Documentation chính thức
- GitHub Guides
- Atlassian Git Tutorials
- Conventional Commits
- Semantic Versioning
🆘 Hỗ trợ
Nếu gặp vấn đề khi học:
- Đọc lại phần "💡 Mẹo & Lỗi thường gặp" trong mỗi bài
- Google error message (rất nhiều người đã gặp!)
- Hỏi bạn bè hoặc team
- Tham khảo Git documentation
✅ Checklist hoàn thành
Sau khi hoàn thành khóa học, bạn nên:
- [ ] Hiểu rõ Git workflow cơ bản
- [ ] Thành thạo các lệnh Git thường dùng
- [ ] Có thể làm việc nhóm trên GitHub
- [ ] Tạo được Pull Request chuyên nghiệp
- [ ] Review code hiệu quả
- [ ] Viết commit message đúng chuẩn
- [ ] Xử lý được conflict
- [ ] Phát hành được version
🎉 Kết luận
Chúc bạn học tốt và áp dụng thành công Git & GitHub vào các dự án của mình!
Nhớ: Practice makes perfect - Hãy thực hành nhiều để thành thạo!
Tác giả: Series này được thiết kế cho sinh viên FPT Polytechnic
Ngày tạo: 2024
Phiên bản: 1.0.0