Git là gì? Các thuật ngữ và câu lệnh Git quan trọng với lập trình viên

Rate this post

Git là gì? Git là một hệ thống quản lý phiên bản phân tán phổ biến nhất hiện nay. Tuy nhiên, đối với những lập trình mới, không phải ai cũng hiểu rõ ràng và thành thục về Git. Hãy cùng Top On Seek tìm hiểu Git là gì, các tính năng, lợi ích, thuật ngữ cơ bản và quy trình làm việc của Git thông qua bài viết này nhé!

Git là gì?

Git được ra đời vào năm 2005 do Linus Torvalds tạo ra. Git là một hệ thống quản lý phiên bản phân tán (Distributed Version Control System – DVCS) mã nguồn mở và miễn phí được sử dụng để quản lý hiệu quả các dự án từ nhỏ đến rất lớn.

Git cung cấp cho mỗi lập trình viên một kho lưu trữ riêng chứa toàn bộ lịch sử thay đổi code. Nó thường được sử dụng trong phát triển phần mềm để quản lý mã nguồn. Các kho lưu trữ Git được kết nối cục bộ, cho phép các lập trình viên làm việc trên máy của riêng họ, nhưng cũng được kết nối với một kho lưu trữ dùng chung.

Git là gì? Cách thức hoạt động của Git
Cách thức hoạt động của Git

Các tính năng và lợi ích của Git là gì?

1. Các tính năng của Git là gì?

  • Git là mã nguồn mở và miễn phí.
  • Git là một công cụ kiểm soát phiên bản phân tán được sử dụng để quản lý mã nguồn.
  • Git cho phép nhiều nhà phát triển (developer) cộng tác.
  • Hàng nghìn nhánh song song (parallel branches) của nó cho phép phát triển phi tuyến tính (non-linear development).
  • Có thể tạo bản sao lưu code.
Tính năng phi tập trung của git là gì
Git cho phép nhiều lập trình viên hoạt động song song trên cùng một dự án

2. Lợi ích của Git là gì?

  • Dễ dàng sử dụng, thao tác nhanh gọn và an toàn.
  • Các dự án thường sẽ có nhiều lập trình viên cùng làm việc song song. Do đó, một hệ thống quản lý phiên bản mã nguồn như Git là cần thiết để đảm bảo không có xung đột code.
  • Lịch sử ghi chép. Các yêu cầu trong dự án thường xuyên được thay đổi và cập nhật. Vì vậy, một hệ thống kiểm soát phiên bản sẽ cho phép các lập trình viên khôi phục (revert) và quay lại phiên bản cũ hơn của code.
  • Phân nhánh đơn giản hơn. Đôi khi một số dự án đang được chạy song song liên quan đến cùng một cơ sở code. Bạn có thể dễ dàng kết hợp các phân nhánh (branch), giúp quy trình code theo nhóm đơn giản hơn rất nhiều.
  • Mã nguồn mở và phát triển phi tập trung. Chỉ cần clone mã nguồn, một phiên bản thay đổi hoặc một nhánh nào đó từ kho lưu trữ là bạn có thể làm việc ở mọi lúc mọi nơi.

Quy trình xử lý công việc (workflow) trên Git

Workflow của Git được chia thành ba trạng thái (status):

– Thư mục làm việc (Working directory) – Thay đổi các tệp trong thư mục làm việc hiện tại của bạn.

– Khu vực tổ chức (Index) – Sắp xếp các tệp và thêm snapshot (ảnh chụp nhanh) các thay đổi vào index của bạn.

– Thư mục Git – Kho lưu trữ (Repository) – Commit lưu trữ vĩnh viễn các snapshot trong thư mục Git của bạn. Bạn có thể thực hiện các thay đổi đối với bất kỳ phiên bản hiện có nào, stage thư mục và commit.

Quy trình xử lý công việc của git là gì
Quy trình làm việc (workflow) trên Git

Các câu lệnh cơ bản trong Git là gì?

1. Git version

Kiểm tra phiên bản của Git.

command1

2. Git config

Định cấu hình các biến cấu hình chung – Nếu bạn đang làm việc với các developer khác, bạn sẽ cần biết ai đang kiểm tra mã xuất nhập và thực hiện thay đổi.

SSPL-lp.
sspl-lp-dns.

3. Git help config

Nếu bạn cần hỗ trợ, hãy sử dụng các lệnh sau:

needhelp

Thao tác này sẽ đưa bạn đến trang trợ giúp Git trong trình duyệt của mình, nơi bạn sẽ thấy:

git-help

4. Git test

  • Tạo test repository trong hệ thống local.
test
  • Di chuyển đến test repository.
movetest

5. Git init

  • Lệnh này được dùng khi bạn muốn tạo một phiên bản git mới cho một dự án.
new git

Lệnh này sẽ tạo một tệp văn bản có tên là info.txt trong thư mục test; bạn có thể viết gì đó để ghi nhớ và lưu lại.

textfile

6. Git status

Câu lệnh này dùng để kiểm tra status của repository.

7. Git add

Thêm tệp bạn đã tạo để thực hiện commit.

add-file

8. Git commit

  • Commit những thay đổi trong đoạn code của repository bằng một tin nhắn ngắn.
repo-hist
  • Thực hiện bất kỳ thay đổi cần thiết nào đối với tệp và lưu.
file-and-save
  • Bây giờ bạn đã thực hiện các thay đổi đối với tệp, bạn có thể so sánh sự khác biệt kể từ lần commit cuối cùng của bạn. 
last-commit.

9. Git config – – global user

Thêm tên người dùng GitHub vào Cấu hình Git (Git Configuration).

username

10. Create a new repository

Tạo một kho lưu trữ từ xa (remote repository).

new-repo

11. Git remote add origin

Kết nối local repository với remote repository của bạn.

local-repo

12. Git push

Push (đẩy) tệp vào remote repository.

/push-the-file
  • Làm mới trang repository của bạn trên GitHub. Bạn sẽ nhận được tệp local trên kho lưu trữ GitHub remote của mình.
refersh

13. Git branch

Tạo một nhánh có tên “first_branch” và hợp nhất (merge) nó với nhánh chính.

first-branch.

14. Git checkout

Lệnh trên chuyển sang nhánh mới từ nhánh chủ (master).

above-command.

15. Git commit

  • Tạo một nhánh “first_branch” và hợp nhất nó với nhánh chính. Lệnh trên tạo một cam kết cho first_branch.
main-branch
branch

Lệnh trên cho thấy rằng nhánh mới có quyền truy cập vào tất cả các tệp.

git-br

Lệnh trên cho thấy nhánh chính không có tệp “info3.txt”.

16. Git checkout master

Lệnh trên được sử dụng để hợp nhất “first_branch” với nhánh chính. Bây giờ, nhánh chính có tệp “info3.txt”.

branch-last

 Các thuật ngữ và câu lệnh Git quan trọng

1. Nhánh (Branch) 

Git branch là gì? Trong Git, một nhánh (branch) đại diện cho các phiên bản cụ thể của một kho lưu trữ (repository) tách ra từ project chính của bạn. Branch cho phép bạn theo dõi các thay đổi thử nghiệm mà bạn thực hiện đối với repository và có thể hoàn tác về các phiên bản cũ hơn.

Cách thức phân nhánh trong Git là gì
Cách thức phân nhánh

Ví dụ sơ đồ trên cho thấy một nhánh chính. Có hai nhánh riêng biệt được gọi là “Small feature” và “Large feature”. Bạn có thể hợp nhất (merge) nó với nhánh chính sau khi hoàn thành công việc của mình.

Bạn có thể dùng lệnh Git branch để liệt kê tất cả các nhánh trong hệ thống. 

Cách sử dụng: Git Branch hoặc Git Branch-a. 

2. Commit

Commit nghĩa là một hành động để Git lưu lại một ảnh chụp nhanh (snapshot) đối với các thay đổi trong thư mục làm việc. Mỗi lần commit nó sẽ lưu lại lịch sử chỉnh sửa của code kèm theo tên và địa chỉ email của người commit.

Cách sử dụng: git commit -m ”Đây là message, bạn dùng để ghi chú những thay đổi để sau này dễ tìm lại.”

Quy trình hoạt động giữa các lập trình viên của Git là gì
Quy trình hoạt động của Git giữa các lập trình viên

3. Repository

Repository là kho lưu trữ Git chứa tất cả các tệp dự án của bạn bao gồm các branch, tags và commit.

4. Index

Bất cứ khi nào bạn thêm, xóa hoặc thay đổi một file, nó vẫn nằm trong index (chỉ mục) cho đến khi bạn sẵn sàng commit các thay đổi. Nó tương tự như khu vực tổ chức (stagging area). 

Bạn có thể sử dụng lệnh git status để xem nội dung của index của bạn.

5. Merge (Hợp nhất) – Git merge

Lệnh git merge kết hợp với các yêu cầu kéo (pull requests) để thêm các thay đổi từ nhánh này sang nhánh khác.

6. Rebase – Git rebase

Lệnh git rebase cho phép bạn phân tách, di chuyển hoặc thoát khỏi các commit. Nó cũng có thể được sử dụng để kết hợp hai nhánh khác nhau.

7. Push – Git push

 Lệnh git push được sử dụng để cập nhật các nhánh từ xa với những thay đổi mới nhất mà bạn đã commit.

8. Pull – Git pull

Pull requests thể hiện các đề xuất thay đổi cho nhánh chính. Nếu bạn làm việc với một nhóm, bạn có thể tạo các pull request để yêu cầu người bảo trì kho lưu trữ xem xét các thay đổi và hợp nhất chúng.

Lệnh git pull được sử dụng để thêm các thay đổi vào nhánh chính.

9. Checkout – Git checkout

Sử dụng lệnh git checkout để chuyển đổi giữa các branch. Chỉ cần nhập git checkout theo sau là tên của branch bạn muốn chuyển đến hoặc nhập git checkout master để trở về branch chính (master branch).

10. Fetch – git fetch

Lệnh git fetch tìm nạp các bản sao và tải xuống tất cả các tệp branch vào máy tính của bạn. Sử dụng nó để lưu các thay đổi mới nhất vào kho lưu trữ của bạn. Nó có thể tìm nạp nhiều branch cùng một lúc.

11. Fork

Một fork là một bản sao của một repository (kho lưu trữ). Các lập trình viên thường tận dụng lợi ích của fork để thử nghiệm các thay đổi mà không ảnh hưởng đến dự án chính.

12. Head

Các commit ở đầu của một branch được gọi là head. Nó đại diện cho commit mới nhất của repository mà bạn hiện đang làm việc.

13. Remote

Một remote repository (kho lưu trữ từ xa) là một bản sao của một nhánh. Remote giao tiếp ngược dòng với nhánh gốc (origin branch) của chúng và các remote khác trong repository.

14. Stash – git stash

Lệnh git stash sẽ bỏ các thay đổi khỏi index của bạn. Nó được dùng nếu bạn muốn tạm dừng những việc bạn đang làm và làm việc khác trong cùng một thời điểm.

Một số lưu ý khi làm việc với Git

Những lưu ý khi làm việc với Git là gì? Đây là câu hỏi của rất nhiều người khi làm việc với phần mềm này. Tuy Git khá đơn giản và dễ sử dụng nhưng để nhớ tất cả các lệnh thì không hề đơn giản. Để công việc của mình đạt hiệu quả cao, bạn cần lưu ý một số điều sau:

1. Sử dụng Git Cheat Sheets: 

Git Cheat Sheets là các website cung cấp git tự động giúp bạn làm việc với Git dễ dàng hơn. Các lệnh trong Git rất nhiều, vì thế mới sử dụng và chưa thể nhớ tất cả thì bạn có thể dùng công cụ này. Một số website cung cấp git mà bạn có thể tham khảo:

2. Commit thường xuyên

Bạn nên thường xuyên commit để các lập trình viên trong team dễ dàng code với nhau hơn và tránh xung đột khi kết hợp.

3. Test rồi mới commit

Trước khi thực hiện commit và chia sẻ với các thành viên khác, bạn cần test để hoàn tất quá trình thay đổi của mình.

4. Viết ghi chú khi commit

Bạn nên viết ghi chú chi tiết những thay đổi để những thành viên khác biết được tiến độ, công việc bạn đang thực hiện.

5. Thử nghiệm trên Branch khác

Bạn có thể sử dụng một nhánh khác để test code thay vì code trực tiếp trên nhánh chính.

6. Hoạt động theo một Git Workflow

Làm việc chung trên một git workflow sẽ giúp cả team hiểu nhau và thực hiện công việc hiệu quả hơn.

Git đã trở thành là một thuật ngữ quen thuộc trong lập trình và bất kì lập trình viên nào cũng sử dụng nó. Hy vọng bài viết trên đây đã cung cấp cho bạn những thông tin hữu ích về Git là gì, các tính năng, lợi ích và các câu lệnh cơ bản của Git. Hơn nữa, những lưu ý khi làm việc với Git sẽ giúp bạn làm việc với các thành viên và thực hiện dự án hiệu quả hơn. 

>>> Xem thêm:

  1. Git là gì?

    Git là một hệ thống quản lý phiên bản phân tán (Distributed Version Control System) mã nguồn mở và miễn phí.

  2. Git repository là gì?

    Repository là kho lưu trữ Git chứa tất cả các tệp dự án của bạn bao gồm các nhánh (branch), tags và commit.

Nguồn: https://www.simplilearn.com/tutorials/git-tutorial/what-is-git

Nhận xét