10 LỆNH GIT MỚI CẦN BIẾT ĐỂ TĂNG HIỆU QUẢ LÀM VIỆC

Green Academy • 18 tháng 1, 2025

Được tạo ra bởi Linus Torvalds vào năm 2005, Git đã trở thành một phần không thể thiếu trong quy trình làm việc của các lập trình viên. Các lệnh Git cho phép bạn làm việc hiệu quả hơn với mã nguồn, duy trì lịch sử của các thay đổi và hợp tác với đồng đội.


Git không ngừng phát triển và mỗi phiên bản mới lại bổ sung các tính năng và lệnh mới để hỗ trợ người dùng làm việc nhanh chóng và dễ dàng hơn. Trong bài viết này, hãy cùng Green Academy tìm hiểu về 10 lệnh Git mới cần biết giúp tăng hiệu quả công việc trong phát triển phần mềm.


Git là gì?

Git là gì?

Git là một hệ thống quản lý phiên bản phân tán, cho phép các lập trình viên làm việc trên các phiên bản khác nhau của mã nguồn mà không lo bị mất dữ liệu. Git giúp theo dõi lịch sử thay đổi của dự án, hỗ trợ hợp tác làm việc và phục hồi các phiên bản trước đó của mã nguồn. Git lưu trữ toàn bộ lịch sử thay đổi và cho phép bạn dễ dàng quay lại trạng thái trước đó hoặc làm việc trên các nhánh riêng biệt của dự án mà không ảnh hưởng đến nhánh chính.

Lợi ích của Git

Quản lý phiên bản: Git cho phép bạn theo dõi sự thay đổi của mã nguồn, dễ dàng quay lại các phiên bản cũ và xem lịch sử thay đổi.

Hợp tác hiệu quả: Git giúp các lập trình viên làm việc cùng nhau trên một dự án mà không lo xung đột. Mỗi người có thể làm việc trên một nhánh riêng biệt và sau đó hợp nhất lại.

Phát triển song song: Bạn có thể phát triển các tính năng mới hoặc sửa lỗi trên các nhánh riêng biệt mà không làm ảnh hưởng đến mã nguồn chính.

Khả năng khôi phục dữ liệu: Git cho phép bạn phục hồi dự án về các trạng thái trước đó, giúp giảm thiểu rủi ro mất mát dữ liệu.

10 Lệnh Git Mới Developer Cần Biết


Dưới đây là 10 lệnh Git mới giúp cải thiện quy trình làm việc của bạn, được giới thiệu trong các phiên bản gần đây của Git:


1. git switch - Chuyển nhánh một cách dễ dàng

Trước Git 2.23, git checkout là lệnh chính để chuyển nhánh, nhưng nó còn có nhiều chức năng khác như khôi phục file và kiểm tra commit cụ thể. Điều này khiến lệnh checkout trở nên phức tạp và dễ gây nhầm lẫn.



Git 2.23 đã giới thiệu lệnh git switch, giúp đơn giản hóa thao tác chuyển nhánh:


Chuyển sang nhánh khác:

git switch feature-branch


Tạo và chuyển sang nhánh mới:

git switch -c new-branch



Lệnh này giúp giảm nguy cơ xảy ra sai sót trong quá trình chuyển nhánh mà không làm thay đổi các file.


git switch

2. git restore - An toàn hoàn nguyên các thay đổi

Trước khi có lệnh git restore, bạn có thể sử dụng git checkout hoặc git reset để hoàn nguyên các thay đổi. Tuy nhiên, những lệnh này có thể gây ảnh hưởng đến nhánh nếu sử dụng sai cách.



Git 2.23 giới thiệu git restore, giúp phục hồi các thay đổi một cách an toàn và rõ ràng hơn:


Hoàn nguyên thay đổi trong thư mục làm việc:

git restore main.js


Hoàn nguyên các thay đổi đã staging:

git restore --staged main.js



Lệnh này giúp bạn dễ dàng hoàn nguyên mà không lo bị ảnh hưởng đến các commit hoặc nhánh khác.


git restore

3. git maintenance - Tự động duy trì sức khỏe của repository

Khi repository phát triển lớn mạnh, hiệu suất có thể giảm. Git 2.29 giới thiệu git maintenance, tự động hóa các tác vụ bảo trì như dọn dẹp và tối ưu hóa repository:



Kích hoạt bảo trì tự động:

git maintenance start


Chạy các tác vụ dọn dẹp ngay lập tức:

git maintenance run



Điều này giúp bạn giữ cho repository luôn khỏe mạnh mà không cần phải thực hiện thủ công các tác vụ như garbage collection hay repacking.


git maintenance

4. git sparse-checkout - Quản lý hiệu quả các repository lớn

Trong các monorepo, việc clone toàn bộ repository là không hiệu quả nếu bạn chỉ cần làm việc với một phần nhỏ. Git 2.25 giới thiệu git sparse-checkout để giải quyết vấn đề này:



Kích hoạt chế độ sparse-checkout:

git sparse-checkout init


Chỉ lấy các thư mục cụ thể:

git sparse-checkout set services/ docs/



Lệnh này giúp bạn chỉ lấy các phần cần thiết của repository, tiết kiệm thời gian và dung lượng lưu trữ.


5. git log --remerge-diff - Hiểu rõ hơn về các merge

Kể từ Git 2.35, bạn có thể sử dụng git log --remerge-diff để hiểu rõ hơn về các thay đổi được giới thiệu trong quá trình merge, đặc biệt là khi có xung đột:


Hiển thị sự khác biệt trong merge:


git log --remerge-diff


Lệnh này giúp bạn gỡ lỗi xung đột merge và dễ dàng theo dõi những thay đổi quan trọng đã được giới thiệu.


6. git blame --ignore-rev - Bỏ qua các commit gây nhiễu

Khi thực hiện thay đổi định dạng mã nguồn hàng loạt, git blame có thể không còn hữu ích, vì mọi dòng đều chỉ đến commit thay đổi định dạng thay vì tác giả ban đầu. Để giải quyết vấn đề này, Git 2.23 giới thiệu tùy chọn --ignore-rev:


Bỏ qua commit định dạng:

git blame --ignore-rev commit-hash


Cấu hình bỏ qua commit định dạng tự động:

echo commit-hash >> .git-blame-ignore-revs

git config blame.ignoreRevsFile .git-blame-ignore-revs


Điều này giúp giữ cho việc sử dụng git blame chính xác và có ích.


7. git range-diff - So sánh và theo dõi các thay đổi giữa các phạm vi commit

Sau khi thực hiện rebase, bạn có thể muốn so sánh các commit cũ với commit mới. Git 2.26 giới thiệu git range-diff để giúp bạn làm điều này:

So sánh phạm vi commit:


git range-diff <range1> <range2>


Lệnh này giúp bạn theo dõi sự thay đổi giữa các commit trong quá trình chỉnh sửa lịch sử.


8. git worktree - Làm việc trên nhiều nhánh cùng lúc

Với git worktree, bạn có thể làm việc trên nhiều nhánh trong các thư mục làm việc khác nhau mà không cần phải chuyển nhánh liên tục:

Thêm worktree mới cho một nhánh:

git worktree add ../feature-branch feature-branch


Xóa worktree khi đã hoàn thành:

git worktree remove ../feature-branch


Điều này giúp bạn tiết kiệm thời gian và công sức khi làm việc trên các nhánh khác nhau.


git worktree

9. git rebase --update-refs - Giữ các references đồng bộ

Khi thực hiện rebase, các tham chiếu nhánh có thể không được cập nhật, dẫn đến sự không đồng bộ. Git 2.38 giới thiệu tùy chọn --update-refs để tự động đồng bộ các tham chiếu:


Cập nhật các tham chiếu sau khi rebase:
git rebase --update-refs


Điều này giúp bạn tránh việc phải cập nhật thủ công các references sau mỗi lần rebase.


10. git commit --fixup và git rebase --autosquash - Sửa các commit

Git cung cấp các lệnh git commit --fixup và git rebase --autosquash để giúp bạn sửa các commit đã được thực hiện trước đó mà không làm rối loạn lịch sử commit:



Tạo commit fixup:

git commit --fixup=<commit-hash>


Tự động squash các commit fixup:

git rebase -i --autosquash <base-branch>



Lệnh này giúp bạn giữ lịch sử commit sạch sẽ và dễ hiểu, đặc biệt khi bạn phải chỉnh sửa các commit trước đó.


Kết luận

Việc nắm vững các lệnh Git mới có thể giúp bạn làm việc hiệu quả hơn, đặc biệt khi phải đối mặt với các repository lớn, làm việc trên nhiều nhánh cùng lúc hoặc cần quản lý lịch sử commit một cách chính xác. Hãy thử sử dụng những lệnh này để tối ưu hóa quy trình làm việc và cải thiện hiệu quả phát triển phần mềm của bạn.


Tìm hiểu khóa Lập trình Fullstack tại Green Academy.

New Paragraph

MỌI NGƯỜI ĐANG QUAN TÂM

CÓ THỂ BẠN QUAN TÂM

Ký Kết Hợp Tác Giữa The Green Lion và Green Academy
Bởi Green Academy 11 tháng 2, 2025
Ngày 11/02/2025, Green Academy rất vinh dự khi tổ chức cuộc gặp gỡ và ký kết thỏa thuận hợp tác với đại diện của The Green Lion, một công ty chuyên tổ chức các chương trình du lịch cộng đồng. Sau quá trình trao đổi chi tiết, cả hai bên đã thống nhất hợp tác lâu dài nhằm tạo ra cơ hội học tập và phát triển nghề nghiệp cho sinh viên và tình nguyện viên.
MỨC LƯƠNG NGÀNH HỌA SĨ THIẾT KẾ GAME 3D - GAME ARTIST
Bởi Green Academy 13 tháng 1, 2025
Ngành thiết kế game 3D ngày càng trở thành lựa chọn hấp dẫn cho các bạn trẻ yêu thích sáng tạo và công nghệ. Đòi hỏi kỹ năng chuyên môn cao, ngành này cũng mang lại thu nhập đáng mơ ước. Trong bài viết này sẽ cung cấp thông tin ngành học thiết kế game 3D, các công cụ hỗ trợ, cũng như mức lương trung bình của ngành nghề 3D Artist này.
Vòng quay may mắn - Xuân sang rước lộc
Bởi Green Academy 10 tháng 1, 2025
Mừng xuân Ất Tỵ, Green Academy gửi tặng chương trình tri ân bùng nổ, với những phần quà hấp dẫn và bao lì xì giá trị để cùng bạn đón Tết thật ấm áp và may mắn!
ĐẦU NĂM ĐĂNG KÝ, LÌ XÌ HẾT Ý
Bởi Green Academy 10 tháng 1, 2025
Tết không chỉ là thời gian sum họp mà còn là thời khắc khởi đầu cho những điều tốt đẹp và may mắn. Để tiếp thêm 'lộc học hành' và khích lệ tinh thần học tập, Green Academy Hà Nội mang đến chương trình đặc biệt “ĐẦU NĂM ĐĂNG KÝ, LÌ XÌ HẾT Ý” với cơ hội nhận lì xì đầu năm giá trị lên đến 500k khi đăng ký bất kỳ khóa học nào.
ĐẦU NĂM ĐĂNG KÝ, LÌ XÌ HẾT Ý
Bởi Green Academy 10 tháng 1, 2025
Tết không chỉ là thời gian sum họp mà còn là thời khắc khởi đầu cho những điều tốt đẹp và may mắn. Để tiếp thêm 'lộc học hành' và khích lệ tinh thần học tập, Green Academy Hà Nội mang đến chương trình đặc biệt “ĐẦU NĂM ĐĂNG KÝ, LÌ XÌ HẾT Ý” với cơ hội nhận lì xì đầu năm giá trị lên đến 500k khi đăng ký bất kỳ khóa học nào.
Bởi Green Academy 17 tháng 12, 2024
Trong thế giới Internet rộng lớn, Google Search từ lâu đã là cô ng cụ tìm kiếm thống trị, cung cấp hàng tỷ kết quả trong nháy mắt. Tuy nhiên, sự ra đời của ChatGPT Search đã mở ra một "làn gió mới", mang phong cách hội thoại AI vào cuộc chơi. Vậy đâu là lựa chọn tốt hơn giữa hai cô ng cụ tìm kiếm này? Bài viết sẽ phân tích chi tiết để giúp bạn có cái nhìn tổng quan và lựa chọn phù hợp nhất.
NGHIÊN CỨU
Bởi Green Academy 2 tháng 11, 2024
APPLICATION OF CHATGPT IN DEVELOPING STYLE AND FILM SCRIPTS AT GRAPHIC DESIGN TRAINING INSTITUTIONS IN VIETNAM Ứng dụng ChatGPT cải tiến quá trình sản xuất phim, tạo cơ hội sáng tạo trong môi trường đào tạo chuyên ngành thiết kế đồ họa. Trong thời kỳ phát triển trí tuệ nhân tạo, sử dụng ChatGPT trong viết kịch bản phim giúp nâng cao hiệu suất và chất lượng, hỗ trợ tùy biến chủ đề, xây dựng kịch bản, và tái hiện chi tiết lịch sử hoặc văn hóa. Tuy nhiên, ChatGPT có thể thiếu tính mới mẻ do học từ dữ liệu có sẵn nên cần cân nhắc sử dụng để phát triển kỹ năng cá nhân. The application of ChatGPT improves the film production process and creates opportunities for creativity in graphic design education. In the era of artificial intelligence, using ChatGPT in script writing enhances efficiency and quality, supports topic customization, script development, and the recreation of historical or cultural details. However, since ChatGPT learns from existing data, it may lack originality; therefore, careful consideration is needed to ensure personal skill development.
[HÀ NỘI] HÀNH TRÌNH 3 THÁNG 'LUYỆN VÕ' FULLSTACK JAVA DEVELOPER DO CHÍNH PHỦ HÀN QUỐC TÀI TRỢ
Bởi Green Academy 30 tháng 9, 2024
Khóa học Fullstack Java Developer tại Green Academy không chỉ mang đến cho các học viên những kiến thức lập trình quan trọng mà còn là chuỗi trải nghiệm phong phú, từ ngày khai giảng đầy hào hứng đến buổi bảo vệ đồ án cuối khóa. Hãy cùng nhìn lại những hoạt động nổi bật trong suốt 3 tháng này!

Đăng Ký - Blog

Share by: