git là gì ?

Git là một hệ thống quản lý phiên bản (Version Control System – VCS) được sử dụng phổ biến trong phát triển phần mềm. Git giúp developer theo dõi, quản lý và lưu lại lịch sử thay đổi của source code trong quá trình phát triển dự án. Thay vì chỉ có một phiên bản code hiện tại, Git cho phép chúng ta lưu lại nhiều phiên bản khác nhau, từ đó có thể xem lại lịch sử thay đổi, khôi phục phiên bản trước hoặc phát triển nhiều tính năng song song mà không làm ảnh hưởng trực tiếp đến code chính.

Giới thiệu các config option cho git thường sử dụng

Các thành phần và khái niệm quan trọng trong Git

Git có khá nhiều khái niệm, tuy nhiên có một số thành phần cơ bản cần nhớ như Repository, Commit, Branch, Working Directory, Staging Area và Remote Repository.

Repository là nơi Git lưu trữ và quản lý source code cũng như toàn bộ lịch sử thay đổi của một project. Repository có thể nằm trên máy tính cá nhân hoặc được lưu trữ trên các nền tảng như GitHub, GitLab,…

Commit là một mốc ghi nhận những thay đổi của source code. Mỗi commit có thể được xem như một phiên bản của project tại một thời điểm cụ thể. Developer thường tạo commit sau khi hoàn thành một phần công việc để có thể theo dõi và quản lý lịch sử thay đổi.

Branch là một nhánh phát triển riêng trong Git. Branch cho phép developer phát triển một tính năng mới hoặc sửa lỗi mà không ảnh hưởng trực tiếp đến branch chính.

Ví dụ:

main
 ├── feature/login
 ├── feature/payment
 └── bugfix/cart

Trong đó main có thể là branch chính, còn feature/login là branch được tạo riêng để phát triển chức năng đăng nhập.

Working Directory là khu vực chứa các file mà developer đang làm việc và chỉnh sửa.

Staging Area là khu vực trung gian, nơi developer lựa chọn những thay đổi nào sẽ được đưa vào commit.

Remote Repository là repository được lưu trữ trên một server hoặc nền tảng trực tuyến như GitHub, GitLab,… giúp các thành viên trong team có thể chia sẻ và cộng tác trên cùng một project.

Cách thức hoạt động của Git

Git hoạt động dựa trên việc ghi nhận các thay đổi của source code thành những phiên bản khác nhau thông qua các commit.

Một quy trình Git cơ bản có thể hiểu như sau:

Working Directory
       ↓
    git add
       ↓
 Staging Area
       ↓
  git commit
       ↓
Local Repository
       ↓
   git push
       ↓
Remote Repository

Khi developer chỉnh sửa code, những thay đổi đó ban đầu nằm trong Working Directory. Sau đó developer sử dụng git add để đưa những thay đổi muốn lưu vào Staging Area.

Tiếp theo, sử dụng git commit để tạo một mốc lưu lại những thay đổi trong Local Repository. Nếu muốn chia sẻ code với các thành viên khác, developer có thể sử dụng git push để đưa commit lên Remote Repository.

Một số lệnh Git cơ bản thường được sử dụng:

git init
git clone
git status
git add
git commit
git branch
git switch
git merge
git pull
git push

Tầm quan trọng của Git

  1. Quản lý lịch sử source code
  2. Hỗ trợ làm việc nhóm
  3. Giảm rủi ro khi phát triển
  4. Hỗ trợ quy trình phát triển chuyên nghiệp

Bài viết khác

Kanban

Kanban là gì? Kanban là một phương pháp quản lý công việc tập trung vào việc trực quan hóa công việc, kiểm soát lượng công việc đang thực hiện và cải thiện dòng chảy của công việc. Kanban giúp team nhìn thấy toàn bộ công việc đang ở trạng thái nào, công việc nào đang […]

Scrum

Scrum là gì? Scrum là một framework được sử dụng để tổ chức và quản lý quá trình phát triển sản phẩm, đặc biệt phổ biến trong phát triển phần mềm. Scrum giúp một team biến những nguyên tắc của Agile thành một cách làm việc cụ thể hơn. Nếu Agile là tư duy, thì […]

SCRUM

1. Scrum là gì và bản chất cốt lõi của nó? Nếu như Agile là bức tranh lớn mang tính định hướng tư duy và triết lý, thì Scrum chính là một khung làm việc (framework) cụ thể, có cấu trúc chặt chẽ để biến tư duy Agile đó thành hành động thực tế. Thay […]

Git Flow

Giới thiệu Git flow là một chiến lược quản lý branch trong Git, được Vincent Driessen giới thiệu vào năm 2010. Mục đích của Gitflow là tổ chức quá trình phát triển và phát hành phần mềm bằng cách quy định vai trò của từng loại branch và cách các branch tương tác với nhau. […]

Waterfall

Waterfall là gì? Waterfall hay còn gọi là mô hình thác nước, là một mô hình phát triển phần mềm theo hướng tuần tự. Có nghĩa là một dự án sẽ được chia thành nhiều giai đoạn và team sẽ thực hiện lần lượt từng giai đoạn, thường phải hoàn thành bước trước rồi mới […]

WaterFall

1. Waterfall là gì và cách thức hoạt động? Waterfall (hay còn gọi là mô hình thác nước) là một trong những phương pháp quản lý và phát triển phần mềm mang tính cổ điển, tuần tự theo đúng nghĩa đen. Giống như một dòng thác nước chảy từ trên đỉnh núi xuống dưới, quy […]