Git Commit là gì? Git Commit được sử dụng như thế nào?

Trong Git có một lệnh cho phép các lập trình viên ghi những thay đổi của dự án một cách dễ dàng gọi là Git Commit. Vậy chính xác Git Commit là gì? Git Commit được sử dụng như thế nào? Hãy cùng Got It tìm hiểu trong bài viết dưới đây nhé!

Git Commit là gì?

Git Commit là một lệnh cam kết trong Git, được dùng để lưu lại những thay đổi trong repository bằng các ảnh chụp nhanh (snapshot). Các ảnh snapshot đã cam kết được coi là phiên bản “an toàn” của một dự án vì Git luôn hỏi trước khi thay đổi chúng. Trước khi bắt đầu lệnh Git Commit, lệnh Git Add sẽ được chạy để thúc đẩy các thay đổi của dự án mà sau đó nó sẽ được lưu trữ trong một cam kết (commit).

Commit là những bức ảnh chụp nhanh của dự án. Mọi commit đều được ghi lại trong nhánh chính của repository. Hai commit khác nhau sẽ không bao giờ ghi đè vì mỗi commit có ID riêng. ID của mỗi commit là một số mật mã được tạo bởi thuật toán SHA (Secure Hash Algorithm).

Git Commit lưu trữ những thay đổi của dự án dưới dạng snapshot

Cách sử dụng lệnh Git Commit

Lệnh Git Commit hoạt động như thế nào?

Để có một cái nhìn đầy đủ về Git Commit thì việc hiểu Git Commit là gì là không đủ. Vì vậy, ở phần này, chúng ta sẽ tiếp tục phân tích cách thức hoạt động của lệnh Git Commit.

Git Commit giống như một nền tảng xây dựng “điểm lưu” để kiểm soát phiên bản trong Git. Ở cấp độ cao, Git có thể được coi là một tiện ích quản lý thời gian của dự án. Trong đó, Git Commit là lệnh cốt lõi để theo dõi tiến trình của dự án trong Git. Các commit được coi là các mốc quan trọng dọc theo dòng thời gian của một dự án Git. Nó giúp nắm bắt trạng thái của một dự án tại thời điểm đó.

Git Snapshots luôn được cam kết với Local repository. Git tạo cơ hội để thu thập các cam kết trong Local repository thay vì thực hiện cam kết ngay lập tức vào repository trung tâm. Điều này thay đổi mô hình phát triển cơ bản cho người dùng Git. Nó giúp dễ dàng hơn trong việc chia một tính năng thành các commit, nhóm các commit liên quan với nhau và xóa lịch sử cục bộ trước khi xuất bản lên repository trung tâm. Nó cũng cho phép các lập trình viên có thể làm việc một cách độc lập.

Mô hình hoạt động của lệnh Git Commit

Các tùy chọn phổ biến

Lệnh Git Commit có một số tùy chọn chính sau:

  • git commit: Thao tác này sẽ khởi chạy một trình soạn thảo văn bản nhắc bạn về một thông báo cam kết. Sau khi bạn đã nhập thư, hãy lưu tệp và đóng trình chỉnh sửa để tạo cam kết thực tế.
  • git commit -a: Lệnh commit này cung cấp tùy chọn -a để chỉ định một số cam kết. Nó được sử dụng để xác nhận các ảnh chụp nhanh của tất cả các thay đổi. Tùy chọn này chỉ áp dụng với các tệp đã được thêm vào Git. Nó sẽ không commit các tệp mới được tạo.
  • git commit -m “commit message”: Tùy chọn cho phép bạn viết thông báo cam kết trên dòng lệnh. Git Commit sẽ mở trình soạn thảo văn bản và nhắc nhập thông báo cam kết.
  • git commit -am “commit message”: Kết hợp tùy chọn -a và -m để tạo lệnh commit cho tất cả các thay đổi theo giai đoạn. Với lệnh này, người dùng sẽ nhận thông báo cam kết nội tuyến.
  • git commit –amend: Đây là một tùy chọn cho phép chỉnh sửa cam kết cuối cùng. Các thay đổi theo giai đoạn được thêm vào cam kết trước đó. Lệnh này mở trình soạn thảo văn bản đã cấu hình của hệ thống và thay đổi thông báo cam kết đã chỉ định trước đó.

Phân biệt Git Commit so với SVN Commit

Từ khái niệm Git Commit là gì, chúng ta có thể phân biệt được Git Commit với SVN Commit. SVN là một mô hình ứng dụng tập trung trong khi Git là một mô hình ứng dụng phân tán. SVN Commit đẩy các thay đổi từ local client đến một repository tập trung. Còn với Git Commit, ảnh chụp nhanh được cam kết vào Local repository. Các cam kết đó có thể được đẩy đến các Remote repository tùy ý.

Sự khác biệt giữ Git Commit và SVN Commit

Trong khi SVN theo dõi sự khác biệt của một tệp thì Git lại dựa trên ảnh chụp nhanh. Git ghi lại nội dung của tất cả các tệp trong mỗi lần commit. Khi cam kết hoặc lưu trạng thái của dự án, Git sẽ chụp nhanh giao diện tệp hiện tại và lưu trữ một tham chiếu đến ảnh chụp nhanh đó. Nếu không có thay đổi trong tệp, Git sẽ không lưu trữ lại.

Trên đây là một bức tranh khái quát về lệnh Git Commit trong hệ thống kiểm soát phiên bản Git. Got It đã cung cấp cho các bạn một số kiến thức cơ bản như Git Commit là gì, các thao tác commit trong Git. Nếu bạn mới làm quen Git thì hãy dành thời gian tìm hiểu về lệnh Git Commit thú vị này nhé!

Tìm hiểu thêm:

Nếu bạn quan tâm, hãy xem các vị trí đang tuyển dụng của Got It tại: bit.ly/gotit-hanoi và đọc thêm về quy trình tuyển dụng tại đây.

https://d1iv5z3ivlqga1.cloudfront.net/wp-content/uploads/2021/04/29235048/1_QAG9RXQyyMAY7i9OYo84FA.png
Got It Vietnam
February 09, 2021
Share this post to:
Tags:
git
0 Comments
Inline Feedbacks
View all comments
Các bài viết liên quan
Hướng dẫn chi tiết cách push code lên Git

Hướng dẫn chi tiết cách push code lên Git

Có lẽ các bạn theo đuổi lĩnh vực IT đã quen thuộc với Git và GitHub rồi đúng không nhỉ? Tuy nhiên, Got It nhận thấy, một vài bạn đọc theo dõi blog vẫn còn mơ hồ, hoặc chưa biết cách để push code lên Git. Vậy thì hôm nay, chúng mình sẽ mang đến […]
Hướng dẫn cách tạo branch trong Git

Hướng dẫn cách tạo branch trong Git

Làm việc trực tiếp trong branch (nhánh) chính của một repository trên GitHub sẽ vô cùng nguy hiểm. Bởi lẽ, bạn sẽ có nguy cơ đưa những dòng code lỗi (bug) vào project đó mà không thông qua việc review code. Vì vậy, để tránh điều này xảy ra, bạn nên tạo một branch mới […]
Git fetch là gì? Phân biệt git fetch và git pull

Git fetch là gì? Phân biệt git fetch và git pull

Rất nhiều các bạn đang làm việc trong lĩnh vực IT thắc mắc về cách phân biệt giữa git fetch và git pull. Vậy git fetch là gì? Câu lệnh này hoạt động như thế nào? Và đâu là sự khác biệt giữa hai lệnh git fetch và git pull? Hãy cùng Got It tìm […]
Git và GitHub — liệu bạn đã thật sự biết cách sử dụng?

Git và GitHub — liệu bạn đã thật sự biết cách sử dụng?

Biến Git và GitHub trở thành công cụ đắc lực cùng Software Engineer nhà Got It!
Git Pull là gì? Mô hình hoạt động của lệnh Git Pull

Git Pull là gì? Mô hình hoạt động của lệnh Git Pull

Vì lệnh Git Fetch và Git Merge được sử dụng thường xuyên nên Git đã kết hợp hai lệnh này thành một lệnh đặc biệt gọi là Git Pull. Vậy Git Pull là gì? Nó được sử dụng như thế nào? Trong bài viết này, Got It sẽ mang đến cho các bạn một cái […]
Git Merge là gì? Những kiến thức cơ bản về Git Merge

Git Merge là gì? Những kiến thức cơ bản về Git Merge

Hợp nhất là một quá trình rất quan trọng khi làm việc với Git. Trong bài viết này, chúng ta sẽ thảo luận về lệnh hợp nhất Git Merge rất quen thuộc trong Git. Nếu bạn là người mới bắt đầu sử dụng Git và đang muốn hiểu quy trình hợp nhất trong Git, thì […]