hocvietcode.com
  • Trang chủ
  • Học lập trình
    • Lập trình C/C++
    • Cấu trúc dữ liệu và giải thuật
    • Lập trình HTML
    • Lập trình Javascript
      • Javascript cơ bản
      • ReactJS framework
      • AngularJS framework
      • Typescript cơ bản
      • Angular
    • Lập trình Mobile
      • Lập Trình Dart Cơ Bản
        • Dart Flutter Framework
    • Cơ sở dữ liệu
      • MySQL – MariaDB
      • Micrsoft SQL Server
      • Extensible Markup Language (XML)
      • JSON
    • Lập trình PHP
      • Lập trình PHP cơ bản
      • Laravel Framework
    • Lập trình Java
      • Java Cơ bản
    • Lập trình C#
      • Lập Trình C# Cơ Bản
      • ASP.NET Core MVC
    • Machine Learning
  • WORDPRESS
    • WordPress cơ bản
    • WordPress nâng cao
    • Chia sẻ WordPress
  • Kiến thức hệ thống
    • Microsoft Azure
    • Docker
    • Linux
  • Chia sẻ IT
    • Tin học văn phòng
      • Microsoft Word
      • Microsoft Excel
    • Marketing
      • Google Adwords
      • Facebook Ads
      • Kiến thức khác
    • Chia sẻ phần mềm
    • Review công nghệ
    • Công cụ – tiện ích
      • Kiểm tra bàn phím online
      • Kiểm tra webcam online
Đăng nhập
  • Đăng nhập / Đăng ký

Please enter key search to display results.

Home
  • Git và Github
Giới thiệu về Hệ thống Quản lý Phiên bản (VCS), Git và GitHub

Giới thiệu về Hệ thống Quản lý Phiên bản (VCS), Git và GitHub

  • 14-01-2026
  • Toanngo92
  • 0 Comments

Mục lục

  • Giới thiệu về Hệ thống Quản lý Phiên bản (VCS)
  • Tầm quan trọng của việc theo dõi thay đổi trong phát triển phần mềm
  • Các loại Hệ thống Quản lý Phiên bản (Types of VCS Evolution)
    • 1. Local Version Control Systems (LVCS)
    • 2. Centralized Version Control Systems (CVCS)
    • 3. Distributed Version Control Systems (DVCS)
  • Bảng so sánh các loại VCS
  • Thuật ngữ phổ biến trong VCS
    • Repository
    • Commit
    • Cloning
    • Branch
    • Checkout
    • Fetching
    • Pulling
    • Forking
  • Git và GitHub là gì?
    • Git
    • GitHub
  • Ý nghĩa của Git và GitHub trong Quản lý Phiên bản
    • Một số tính năng của Git
  • Tính năng của GitHub
  • Cài đặt Git và GitHub Desktop trên Windows
    • Cài Git
    • Cấu hình Git
    • Cài GitHub Desktop
  • Thiết lập tài khoản GitHub
  • Đăng nhập GitHub
  • Các thao tác cơ bản với Repository bằng Git và GitHub
  • Tạo Repository
    • Sử dụng GitHub
    • Tạo Repository mới
    • Nhập thông tin chi tiết của Repository mới
  • Sử dụng Git
    • Khởi tạo Repository cục bộ (Initialize a Local Repository)
    • Tạo Git Repository thành công
  • Clone Repository
    • Sử dụng GitHub
      • Tìm URL của Repository
    • Clone một Repository có sẵn
    • Clone Repository bằng Git
  • Tổng kết (Summary)

Giới thiệu về Hệ thống Quản lý Phiên bản (VCS)

Quản lý phiên bản (còn gọi là quản lý mã nguồn) là quá trình theo dõi và quản lý các thay đổi trong mã nguồn phần mềm.
VCS là các công cụ hỗ trợ nhóm phát triển phần mềm trong việc quản lý thay đổi mã theo thời gian.

Với sự phát triển nhanh của môi trường phát triển phần mềm, các hệ thống này giúp đội ngũ làm việc hiệu quả và thông minh hơn.
Chúng đặc biệt hữu ích cho các nhóm DevOps, giúp giảm thời gian phát triển và tăng tỷ lệ thành công khi triển khai.


Tầm quan trọng của việc theo dõi thay đổi trong phát triển phần mềm

Việc theo dõi thay đổi là yếu tố then chốt để đảm bảo khả năng cộng tác trơn tru và duy trì tính trách nhiệm.

  • VCS như Git cho phép nhiều lập trình viên cùng làm việc trên một dự án mà không ghi đè lên công việc của nhau
  • Cung cấp cơ chế giải quyết xung đột hiệu quả
  • Lưu trữ lịch sử đầy đủ của các thay đổi: ai làm, làm khi nào

Lịch sử này rất quan trọng để:

  • Hiểu quá trình phát triển của dự án
  • Debug lỗi
  • Khôi phục phiên bản cũ khi mất hoặc hỏng dữ liệu

VCS còn:

  • Cho phép tạo nhánh để thử nghiệm tính năng mới mà không ảnh hưởng mã chính
  • Khuyến khích đổi mới
  • Tích hợp quy trình code review để nâng cao chất lượng mã
  • Hỗ trợ CI/CD nhằm đảm bảo mã mới không phá vỡ chức năng hiện có

Commit message và changelog đóng vai trò như tài liệu, giúp các lập trình viên hiện tại và tương lai hiểu rõ codebase.

Ngoài ra, VCS cung cấp:

  • Nhật ký thay đổi minh bạch phục vụ kiểm toán và tuân thủ
  • Tự động hóa nhiều bước trong quy trình phát triển
  • Nâng cao năng suất và hiệu quả

👉 Kết luận: Theo dõi thay đổi bằng VCS là không thể thiếu trong phát triển phần mềm hiện đại.


Các loại Hệ thống Quản lý Phiên bản (Types of VCS Evolution)

1. Local Version Control Systems (LVCS)

Là dạng VCS đơn giản nhất, toàn bộ việc quản lý phiên bản diễn ra trên máy cục bộ.

  • Mỗi file và thay đổi được lưu trong một cơ sở dữ liệu
  • Cung cấp lịch sử chỉnh sửa cơ bản

Ví dụ: Revision Control System (RCS)

Đặc điểm:

  • Cài đặt và sử dụng đơn giản
  • Không phụ thuộc mạng
  • Chỉ phù hợp cho cá nhân, không hỗ trợ làm việc nhóm

2. Centralized Version Control Systems (CVCS)

  • Một máy chủ trung tâm lưu toàn bộ file và phiên bản
  • Người dùng checkout file từ repository trung tâm

Ví dụ: CVS, Subversion (SVN), Perforce

Đặc điểm:

  • Hỗ trợ cộng tác tốt hơn
  • Quản lý tập trung
  • Phải kết nối server trung tâm để commit
  • Có nguy cơ “điểm lỗi duy nhất” (single point of failure)

3. Distributed Version Control Systems (DVCS)

  • Mỗi client có một bản sao đầy đủ của repository và lịch sử
  • Cho phép làm việc offline
  • Dễ dàng branch và merge

Ví dụ: Git, Mercurial, Bazaar

Đặc điểm:

  • Lưu toàn bộ lịch sử trên mỗi máy
  • Phân tán → tăng độ tin cậy
  • Hỗ trợ workflow phức tạp
  • Hiệu năng cao cho team phân tán
  • Làm việc offline hoàn toàn

Bảng so sánh các loại VCS

Tính năng Local VCS Centralized VCS Distributed VCS
Độ phức tạp Đơn giản Trung bình Phức tạp
Phụ thuộc mạng Không Có Không (local)
Cộng tác Thấp Cao Rất cao
Bản sao repo 1 bản local 1 bản trung tâm Mỗi client 1 bản
Điểm lỗi duy nhất Không Có Không
Branch/Merge Cơ bản Trung bình Nâng cao
Hiệu năng Cao (local) Phụ thuộc server Cao
Làm việc offline Có Hạn chế Hoàn toàn
Ví dụ RCS CVS, SVN, Perforce Git, Mercurial

Thuật ngữ phổ biến trong VCS

Repository

Kho lưu trữ dự án, chứa toàn bộ file và lịch sử thay đổi.

Commit

Một “ảnh chụp” của repository tại một thời điểm, ghi lại:

  • Những file thay đổi
  • Lý do thay đổi

Cho phép quay lại phiên bản trước nếu cần.

Cloning

Tạo bản sao local của repository từ remote để làm việc và commit trước khi push lên.

Branch

Nhánh phát triển riêng biệt để:

  • Làm tính năng mới
  • Fix bug
  • Thử nghiệm

Không ảnh hưởng code chính.

Checkout

Chuyển đổi giữa các branch hoặc commit để làm việc với phiên bản cụ thể.

Fetching

Tải cập nhật từ remote về local không merge.

Pulling

Fetch + merge thay đổi từ remote vào branch hiện tại.

Forking

Tạo bản sao cá nhân của repository người khác để thử nghiệm và gửi pull request.


Git và GitHub là gì?

Git

  • Là một hệ thống VCS phân tán
  • Cho phép nhiều lập trình viên làm việc song song mà không xung đột

GitHub

  • Nền tảng web lưu trữ repository Git
  • Bổ sung các công cụ cộng tác và quản lý dự án

Ý nghĩa của Git và GitHub trong Quản lý Phiên bản

Git:

  • Xử lý tốt dự án nhỏ đến rất lớn
  • Hoạt động nhanh và hiệu quả
  • Cho phép làm việc độc lập và song song

Một số tính năng của Git

  • Branching: tạo nhiều luồng phát triển
  • Merging: gộp thay đổi, xử lý xung đột
  • Lightweight: thao tác local, ít tốn tài nguyên
  • Speed: commit, branch, merge rất nhanh

Lợi ích:

  • Mỗi dev có bản sao đầy đủ → làm việc offline
  • Không có điểm lỗi duy nhất
  • Branch/merge mạnh mẽ → tăng năng suất và chất lượng code

Tính năng của GitHub

  • Công cụ cộng tác: pull request, issues, discussion
  • Hosting repository: truy cập mọi nơi, phù hợp open-source
  • Hỗ trợ cộng đồng lớn
  • Dễ chia sẻ code
  • Tích hợp CI/CD: test, deploy tự động

Cài đặt Git và GitHub Desktop trên Windows

Cài Git

Bước 1: Truy cập
👉 https://git-scm.com/
Nhấn Download để tải Git cho Windows.

Bước 2: Chạy file cài đặt

  • Mở file Git-2.x.x-64-bit.exe
  • Làm theo hướng dẫn
  • Nhấn Finish khi hoàn tất

Cấu hình Git

Mở Git Bash → nhập:

git config --global user.name "Peter"
git config --global user.email [email protected]

Thông tin này sẽ gắn với các commit.


Cài GitHub Desktop

Bước 1: Truy cập
👉 https://desktop.github.com/

Bước 2: Tải bản Windows và cài đặt

Bước 3: Đăng nhập hoặc tạo tài khoản GitHub

  • Sau khi đăng nhập, có thể clone, tạo repo, quản lý dự án

Thiết lập tài khoản GitHub

Bước 1: Truy cập https://github.com/
Bước 2: Nhấn Sign up
Bước 3: Nhập:

  • Username
  • Email
  • Password mạnh

Bước 4: Xác thực email
Bước 5: Cá nhân hóa tài khoản và đăng nhập

 

Đăng nhập GitHub


Các thao tác cơ bản với Repository bằng Git và GitHub


Tạo Repository

Chúng ta sẽ tìm hiểu cách tạo một repository bằng GitHub.

Sử dụng GitHub

Bước 1: Đăng nhập GitHub

  • Truy cập website GitHub
  • Đăng nhập vào tài khoản hiện có

Bước 2: Tạo Repository mới

  • Nhấn vào biểu tượng “+” ở góc trên bên phải
  • Chọn New repository

Tạo Repository mới

  • Nhập tên repository
  • Nhập mô tả (không bắt buộc)
  • Chọn chế độ hiển thị (Public hoặc Private)
  • Chọn khởi tạo với file README nếu muốn
  • Nhấn Create repository

Nhập thông tin chi tiết của Repository mới


Sử dụng Git

Khởi tạo Repository cục bộ (Initialize a Local Repository)

  • Mở Git Bash và di chuyển đến thư mục dự án
  • Chạy lệnh:
git init
  • Lệnh này sẽ khởi tạo một Git repository mới trong thư mục hiện tại

Tạo Git Repository thành công


Clone Repository

Chúng ta tiếp tục tìm hiểu cách clone một repository bằng GitHub.

Sử dụng GitHub

Tìm URL của Repository

  • Truy cập repository cần clone trên GitHub
  • Nhấn nút Code và sao chép URL của repository


Clone một Repository có sẵn

  • Mở Git Bash
  • Chạy lệnh:
git clone <repository-url>
  • Thay <repository-url> bằng URL đã sao chép từ GitHub

Clone Repository bằng Git

Repository từ GitHub sẽ được sao chép về máy cục bộ dưới dạng một repository local.


Tổng kết (Summary)

  • Version Control theo dõi và quản lý các thay đổi của mã nguồn, giúp nhóm làm việc hiệu quả và giảm thời gian phát triển
  • Theo dõi thay đổi trong phát triển phần mềm giúp cộng tác liền mạch, đảm bảo trách nhiệm, và cung cấp lịch sử đầy đủ cho việc debug và theo dõi tiến trình dự án
  • VCS như Git cho phép nhiều lập trình viên làm việc đồng thời, hỗ trợ branching, merging và sao lưu để khôi phục phiên bản cũ
  • LVCS hoạt động trên máy local, phù hợp cho cá nhân nhưng không hỗ trợ cộng tác
  • CVCS sử dụng server trung tâm, tăng khả năng cộng tác nhưng phụ thuộc mạng và có điểm lỗi duy nhất
  • DVCS cung cấp bản sao đầy đủ cho mỗi client, hỗ trợ làm việc offline và workflow phức tạp
  • Git (DVCS) cho phép làm việc độc lập, offline, branching và merging hiệu quả
  • GitHub kết hợp với Git cung cấp môi trường cộng tác, chia sẻ code dễ dàng và tích hợp CI/CD

 

Bài tập

  1. Tạo repository mới demo1 trên GitHub, khởi tạo với file README. Sau khi tạo xong, chỉnh sửa README và commit với commit message có ý nghĩa.
  2. Tạo repository demo2 bằng dòng lệnh Git. Thêm và xóa file, sau đó push repository này lên GitHub.
  3. Clone bất kỳ repository nào từ GitHub về máy local bằng Git Bash. Mở file trong repository đã clone, chỉnh sửa, sau đó push thay đổi lên GitHub.

THÊM BÌNH LUẬN Cancel reply

Dịch vụ thiết kế Wesbite

NỘI DUNG MỚI CẬP NHẬT

Giới thiệu về Hệ thống Quản lý Phiên bản (VCS), Git và GitHub

Điều kiện trong C – các cấu trúc điều kiện if/else, switch case

Thao tác Input / Output trong C

Data Types (kiểu dữ liệu) trong MySQL

Abstract Class (lớp trừu tượng) trong PHP

Giới thiệu

hocvietcode.com là website chia sẻ và cập nhật tin tức công nghệ, chia sẻ kiến thức, kỹ năng. Chúng tôi rất cảm ơn và mong muốn nhận được nhiều phản hồi để có thể phục vụ quý bạn đọc tốt hơn !

Liên hệ quảng cáo: [email protected]

Kết nối với HỌC VIẾT CODE

© hocvietcode.com - Tech888 Co .Ltd since 2019

Đăng nhập

Trở thành một phần của cộng đồng của chúng tôi!
Registration complete. Please check your email.
Đăng nhập bằng google
Đăng kýBạn quên mật khẩu?

Create an account

Welcome! Register for an account
The user name or email address is not correct.
Registration confirmation will be emailed to you.
Log in Lost your password?

Reset password

Recover your password
Password reset email has been sent.
The email could not be sent. Possible reason: your host may have disabled the mail function.
A password will be e-mailed to you.
Log in Register
×