Skip to content

Yêu Thủ Thuật

  • Sample Page

Yêu Thủ Thuật

  • Home » 
  • Thủ Thuật Máy Tính » 
  • git-who: Công Cụ Toàn Diện Để Phân Tích Đóng Góp Mã Nguồn Trong Dự Án Git

git-who: Công Cụ Toàn Diện Để Phân Tích Đóng Góp Mã Nguồn Trong Dự Án Git

By Administrator Tháng 8 23, 2025 0
Bảng hiển thị kết quả lệnh git-who với các cột được căn chỉnh và màu sắc phân biệt số dòng đã thêm/xóa, minh họa dữ liệu đóng góp chi tiết theo tác giả.
Table of Contents

Trong quá trình phát triển phần mềm, git blame là một lệnh hữu ích giúp xác định tác giả của từng dòng mã cụ thể. Tuy nhiên, khi bạn cần một cái nhìn tổng quan toàn diện hơn về đóng góp của các tác giả trong các dự án mã nguồn mở, git-who nổi bật như một công cụ thay thế vượt trội, cung cấp những hiểu biết sâu sắc hơn về từng cá nhân.

git-who Là Gì Và Khác Biệt Với git blame Như Thế Nào?

git-who là một lệnh Git tùy chỉnh được thiết kế để hiển thị thông tin chi tiết và hữu ích về các tác giả của commit trong một kho lưu trữ (repository). Không chỉ dừng lại ở việc biết ai đã sửa đổi một dòng mã, bạn có thể sử dụng git-who để khám phá những nhà phát triển nào đã cập nhật mã gần đây nhất, ai đã đóng góp nhiều nhất cho toàn bộ dự án, và thậm chí là ai chịu trách nhiệm chính cho các thành phần con cụ thể.

Trong khi lệnh git blame tích hợp chỉ cung cấp thông tin về tác giả của từng dòng mã riêng lẻ, git-who mang đến cái nhìn tổng thể về các tệp, thư mục và toàn bộ dự án. Công cụ này hoạt động trực tiếp trên terminal nhưng tạo ra đầu ra rất dễ đọc và hấp dẫn, hiển thị dữ liệu dưới dạng bảng và tô màu để làm nổi bật các thông tin quan trọng như số dòng mã đã thêm hoặc xóa. Điều này giúp các nhà quản lý dự án và lập trình viên dễ dàng theo dõi hiệu suất và sự phát triển của mã nguồn theo từng cá nhân.

Bảng hiển thị kết quả lệnh git-who với các cột được căn chỉnh và màu sắc phân biệt số dòng đã thêm/xóa, minh họa dữ liệu đóng góp chi tiết theo tác giả.Bảng hiển thị kết quả lệnh git-who với các cột được căn chỉnh và màu sắc phân biệt số dòng đã thêm/xóa, minh họa dữ liệu đóng góp chi tiết theo tác giả.

Cách Cài Đặt Và Sử Dụng git-who

Cách đơn giản nhất để cài đặt git-who là sử dụng trình quản lý gói Homebrew:

brew install git-who

Ngoài ra, bạn cũng có thể cài đặt phần mềm này từ mã nguồn hoặc tải về tệp nhị phân đã biên dịch sẵn từ trang phát hành của dự án. Sau khi cài đặt, bạn có thể chạy lệnh git-who hoặc git who trong thư mục kho lưu trữ Git:

Giao diện mặc định của lệnh git who, hiển thị bảng tóm tắt các tác giả đóng góp được sắp xếp theo tổng số commit, giúp dễ dàng nhận diện những người đóng góp hàng đầu.Giao diện mặc định của lệnh git who, hiển thị bảng tóm tắt các tác giả đóng góp được sắp xếp theo tổng số commit, giúp dễ dàng nhận diện những người đóng góp hàng đầu.

Đảm bảo rằng tệp nhị phân git-who nằm trong biến môi trường PATH của bạn, đặc biệt nếu bạn đã biên dịch từ mã nguồn. Điều này cho phép bạn sử dụng dạng lệnh git who tiện lợi hơn.

Chế độ xem mặc định này là lệnh con table, cung cấp một bản tóm tắt hữu ích về những người đóng góp hàng đầu, kèm theo thời gian chỉnh sửa gần nhất và tổng số commit của họ. git-who còn hỗ trợ hai lệnh con khác là tree và hist.

Lệnh con tree hiển thị toàn bộ cấu trúc phân cấp của kho lưu trữ, với tên người đóng góp hàng đầu cùng với tổng số commit của họ bên cạnh mỗi thư mục hoặc tệp. Điều này đặc biệt hữu ích để nắm bắt nhanh chóng ai là người chịu trách nhiệm chính cho từng phần của dự án.

Kết quả lệnh git-who tree, trình bày cấu trúc cây thư mục đầy đủ của kho lưu trữ, kèm theo tên tác giả đóng góp nhiều nhất cho mỗi tệp hoặc thư mục.Kết quả lệnh git-who tree, trình bày cấu trúc cây thư mục đầy đủ của kho lưu trữ, kèm theo tên tác giả đóng góp nhiều nhất cho mỗi tệp hoặc thư mục.

Lệnh con thứ ba là hist, viết tắt của “history” (lịch sử). Chế độ xem này hiển thị dòng thời gian đóng góp theo ngày, cho phép bạn theo dõi các nhà đóng góp của dự án theo thời gian. Đây cũng là một dạng biểu đồ cột (histogram), giúp bạn nhanh chóng nhận biết những giai đoạn có nhiều commit nhất, từ đó phân tích cường độ phát triển của dự án.

Biểu đồ hiển thị kết quả lệnh git-who hist, minh họa dòng thời gian đóng góp theo năm và tác giả có số commit cao nhất trong từng giai đoạn, giúp theo dõi sự phát triển của dự án.Biểu đồ hiển thị kết quả lệnh git-who hist, minh họa dòng thời gian đóng góp theo năm và tác giả có số commit cao nhất trong từng giai đoạn, giúp theo dõi sự phát triển của dự án.

Một số lệnh có thể mất nhiều thời gian để hoàn thành, đặc biệt trên các kho lưu trữ lớn như nhân Linux. Để tăng tốc độ, bạn có thể thử lọc kết quả bằng cách sử dụng các tùy chọn nâng cao của git-who.

Các Tính Năng Nâng Cao Của git-who

Mỗi lệnh con của git-who đều có các cài đặt mặc định hợp lý, nhưng bạn sẽ thấy kết quả rất khác nhau tùy thuộc vào kích thước và cấu trúc của kho lưu trữ. Ví dụ, chạy lệnh git-who tree trong một kho lưu trữ khổng lồ sẽ tạo ra rất nhiều dòng đầu ra.

Chương trình git-who hỗ trợ một số tùy chọn để bạn điều chỉnh hành vi và đầu ra của nó. Tất cả các lệnh con đều cho phép bạn sử dụng --author để chỉ hiển thị các tác giả cụ thể và --nauthor để loại trừ họ. Chúng cũng chấp nhận các tùy chọn --since và --until để giới hạn đầu ra theo ngày tháng. Điều này giúp tập trung vào các đóng góp trong một khoảng thời gian nhất định hoặc từ các cá nhân được chọn, tối ưu hóa quá trình phân tích.

Màn hình hiển thị kết quả lệnh git-who đã được lọc theo tác giả và thời gian sử dụng tùy chọn --since, minh họa cách tùy chỉnh để xem đóng góp cụ thể.Màn hình hiển thị kết quả lệnh git-who đã được lọc theo tác giả và thời gian sử dụng tùy chọn –since, minh họa cách tùy chỉnh để xem đóng góp cụ thể.

Điều quan trọng cần lưu ý là theo mặc định, các số liệu thống kê của git-who không bao gồm các commit hợp nhất (merge commits). Điều này có thể tạo ra sự khác biệt lớn tùy thuộc vào cách quản lý kho lưu trữ. Chẳng hạn, Linus Torvalds, người sáng lập Linux, lại vắng mặt một cách rõ ràng trong các số liệu thống kê mặc định của kho lưu trữ Linux của chính ông:

Kết quả mặc định của lệnh git-who khi chạy trên kho lưu trữ Linux, cho thấy Linus Torvalds không xuất hiện trong danh sách những người đóng góp hàng đầu khi chưa tính commit hợp nhất.Kết quả mặc định của lệnh git-who khi chạy trên kho lưu trữ Linux, cho thấy Linus Torvalds không xuất hiện trong danh sách những người đóng góp hàng đầu khi chưa tính commit hợp nhất.

Tuy nhiên, với vai trò là người bảo trì tổng thể, Torvalds xử lý một số lượng lớn các commit hợp nhất. Do đó, khi tính đến các commit hợp nhất bằng cách sử dụng tùy chọn --merges, ông trở thành người đóng góp lớn nhất. Tùy chọn này rất quan trọng để có cái nhìn đầy đủ và chính xác về vai trò của từng cá nhân trong dự án, đặc biệt là với những người chịu trách nhiệm tích hợp mã.

Kết quả lệnh git-who trên kho lưu trữ Linux với tùy chọn --merges, minh họa Linus Torvalds trở thành người đóng góp hàng đầu khi tính cả các commit hợp nhất.Kết quả lệnh git-who trên kho lưu trữ Linux với tùy chọn –merges, minh họa Linus Torvalds trở thành người đóng góp hàng đầu khi tính cả các commit hợp nhất.

Tùy Chỉnh git-who table

Bảng mặc định sắp xếp theo tổng số commit. Bạn có thể thay đổi để sắp xếp các tác giả theo commit gần đây nhất của họ bằng cách sử dụng tùy chọn -m:

Bảng kết quả từ lệnh git-who table sử dụng tùy chọn -m, hiển thị danh sách tác giả được sắp xếp theo thời gian chỉnh sửa gần nhất thay vì số lượng commit.Bảng kết quả từ lệnh git-who table sử dụng tùy chọn -m, hiển thị danh sách tác giả được sắp xếp theo thời gian chỉnh sửa gần nhất thay vì số lượng commit.

Tùy chọn -l tập trung vào số dòng đã thay đổi thay vì số commit. Nó sẽ sắp xếp theo số dòng đã thay đổi và hiển thị số lượng tệp đã sửa đổi, số dòng đã thêm và số dòng đã xóa, mang lại cái nhìn sâu sắc hơn về khối lượng công việc thực tế của từng nhà phát triển.

Bảng hiển thị kết quả lệnh git-who với các cột được căn chỉnh và màu sắc phân biệt số dòng đã thêm/xóa, minh họa dữ liệu đóng góp chi tiết theo tác giả.Bảng hiển thị kết quả lệnh git-who với các cột được căn chỉnh và màu sắc phân biệt số dòng đã thêm/xóa, minh họa dữ liệu đóng góp chi tiết theo tác giả.

Bạn cũng có thể sắp xếp đầu ra theo số lượng tệp đã thay đổi bằng tùy chọn -f hoặc theo lần thay đổi đầu tiên với tùy chọn -c.

Tùy Chỉnh git-who tree

Điều đầu tiên bạn có thể muốn làm với lệnh tree là giới hạn độ sâu của nó. Nếu kho lưu trữ của bạn chứa nhiều tệp và thư mục, lệnh tree mặc định sẽ tạo ra rất nhiều đầu ra. Tùy chọn -d cho phép bạn chỉ định độ sâu, ví dụ, bạn có thể xem thông tin tác giả chỉ cho các thư mục cấp cao nhất:

Kết quả từ lệnh git-who tree sử dụng tùy chọn -d để giới hạn độ sâu của hệ thống phân cấp thư mục, giúp người dùng tập trung vào các thư mục cấp cao nhất.Kết quả từ lệnh git-who tree sử dụng tùy chọn -d để giới hạn độ sâu của hệ thống phân cấp thư mục, giúp người dùng tập trung vào các thư mục cấp cao nhất.

Tùy chọn -l sẽ chọn tác giả với số dòng đã thay đổi nhiều nhất thay vì tác giả có số commit nhiều nhất. Nó còn chú thích từng tệp và thư mục với số dòng mà mỗi tác giả đã thêm và xóa tại điểm đó, cung cấp một phân tích rất chi tiết về đóng góp mã nguồn.

Màn hình hiển thị lệnh git-who tree với tùy chọn -l, cho phép chọn tác giả dựa trên số dòng đã thay đổi nhiều nhất thay vì số commit, kèm theo chú thích số dòng thêm/xóa.Màn hình hiển thị lệnh git-who tree với tùy chọn -l, cho phép chọn tác giả dựa trên số dòng đã thay đổi nhiều nhất thay vì số commit, kèm theo chú thích số dòng thêm/xóa.

Tùy Chỉnh git-who hist

Lệnh con hist đã có một tính năng tích hợp thông minh, tự động chọn chế độ xem theo ngày, tháng hoặc năm dựa trên tuổi của kho lưu trữ. Điều này giúp hiển thị dữ liệu lịch sử đóng góp một cách trực quan và phù hợp nhất với quy mô thời gian của dự án.

Hai ví dụ về kết quả lệnh git-who hist: một cho kho lưu trữ lâu đời hiển thị theo năm, và một cho kho mới hơn hiển thị theo tháng, minh họa khả năng tự động điều chỉnh khung thời gian.Hai ví dụ về kết quả lệnh git-who hist: một cho kho lưu trữ lâu đời hiển thị theo năm, và một cho kho mới hơn hiển thị theo tháng, minh họa khả năng tự động điều chỉnh khung thời gian.

Các tùy chọn --since và --until hoạt động rất tốt với hist để giới hạn khoảng thời gian báo cáo. Bạn có thể sử dụng các giá trị linh hoạt cho các tùy chọn này, cho phép phân tích đóng góp trong một khung thời gian chính xác, từ vài ngày cho đến vài năm.

Biểu đồ lịch sử từ lệnh git-who hist với tùy chọn --since, hiển thị đóng góp theo một khoảng thời gian cụ thể như 'last Tuesday', minh họa sự linh hoạt trong lọc dữ liệu theo ngày tháng.Biểu đồ lịch sử từ lệnh git-who hist với tùy chọn –since, hiển thị đóng góp theo một khoảng thời gian cụ thể như 'last Tuesday', minh họa sự linh hoạt trong lọc dữ liệu theo ngày tháng.

Các tùy chọn này khá linh hoạt về định dạng chấp nhận, vì vậy hãy thử nghiệm. Ví dụ, tất cả các định dạng sau đều hoạt động:

  • --since=2010
  • --since="2010-09-01 12:00:00"
  • --since=yesterday
  • --since="3 weeks ago"
  • --since="february 24"
Share
facebookShare on FacebooktwitterShare on TwitterpinterestShare on Pinterest
linkedinShare on LinkedinvkShare on VkredditShare on ReddittumblrShare on TumblrviadeoShare on ViadeobufferShare on BufferpocketShare on PocketwhatsappShare on WhatsappviberShare on ViberemailShare on EmailskypeShare on SkypediggShare on DiggmyspaceShare on MyspacebloggerShare on Blogger YahooMailShare on Yahoo mailtelegramShare on TelegramMessengerShare on Facebook Messenger gmailShare on GmailamazonShare on AmazonSMSShare on SMS
Post navigation
Previous post

Plex Nâng Cấp Ứng Dụng Di Động: Giao Diện Mới Thân Thiện Hơn và Những Thay Đổi Quan Trọng

Next post

Tailscale VPN: Giải Pháp Truy Cập Mạng Từ Xa An Toàn và Hiệu Quả

Administrator

Related Posts

Categories Thủ Thuật Máy Tính git-who: Công Cụ Toàn Diện Để Phân Tích Đóng Góp Mã Nguồn Trong Dự Án Git

ASUS Zenbook S 14 (2024): Sự Hoàn Thiện Vượt Trội của Dòng Laptop Cao Cấp Mỏng Nhẹ

Categories Thủ Thuật Máy Tính git-who: Công Cụ Toàn Diện Để Phân Tích Đóng Góp Mã Nguồn Trong Dự Án Git

Các Phím Tắt Windows Thiết Yếu Nâng Tầm Hiệu Suất Làm Việc Của Bạn

Categories Thủ Thuật Máy Tính git-who: Công Cụ Toàn Diện Để Phân Tích Đóng Góp Mã Nguồn Trong Dự Án Git

Khám phá Các Công Cụ Tìm Kiếm AI: Bước Tiến Vượt Trội So Với Google

Leave a Comment Hủy

Recent Posts

  • ASUS Zenbook S 14 (2024): Sự Hoàn Thiện Vượt Trội của Dòng Laptop Cao Cấp Mỏng Nhẹ
  • Giới thiệu Docs: Giải pháp Soạn thảo Cộng tác Mở từ Pháp và Đức
  • Các Phím Tắt Windows Thiết Yếu Nâng Tầm Hiệu Suất Làm Việc Của Bạn
  • Thúc đẩy xu hướng game chất lượng cao, ngắn gọn: Tương lai của trải nghiệm chơi game
  • So Sánh Chi Tiết: OnePlus 13R Đối Đầu Google Pixel 9a – Đâu Là Lựa Chọn Tối Ưu Năm 2025?

Recent Comments

Không có bình luận nào để hiển thị.
Copyright © 2025 Yêu Thủ Thuật - Powered by Nevothemes.
Offcanvas
Offcanvas

  • Lost your password ?