Bạn không phải là người đầu tiên nghĩ về "số sửa đổi" trong Git , nhưng ' wc
' khá nguy hiểm, vì cam kết có thể bị xóa hoặc xóa, và lịch sử được xem lại.
"Số sửa đổi" đặc biệt quan trọng đối với Subversion vì nó cần thiết trong trường hợp hợp nhất (SVN1.5 và 1.6 đã được cải thiện ở mặt trước đó).
Bạn có thể kết thúc với một hook pre-commit bao gồm số sửa đổi trong bình luận, với một thuật toán không liên quan đến việc tra cứu tất cả lịch sử của một nhánh để xác định số chính xác.
Bazaar thực sự đã đưa ra một thuật toán như vậy , và nó có thể là điểm khởi đầu tốt cho những gì bạn muốn làm.
(Như câu trả lời của Bombe chỉ ra, Git thực sự có một thuật toán riêng, dựa trên thẻ mới nhất, cộng với số lần xác nhận, cộng với một chút khóa SHA-1). Bạn sẽ thấy (và upvote) câu trả lời của anh ấy nếu nó phù hợp với bạn.
Để minh họa ý tưởng của Aaron , bạn cũng có thể nối băm cam kết Git vào tệp "thông tin" của ứng dụng mà bạn đang phân phối với ứng dụng của mình.
Theo cách đó, hộp về sẽ trông như sau:
Số ứng dụng là một phần của cam kết, nhưng 'tệp "thông tin" của ứng dụng được tạo trong quá trình đóng gói, liên kết hiệu quả số xây dựng ứng dụng với id sửa đổi kỹ thuật .