2008-11-02 34 views
6

Chúng tôi đang sử dụng Subversion. Chúng tôi muốnSVN - Truy xuất thông tin hữu ích

1. search across all commit messages ? 
2. monitor the commits on certain important files ? 
3. identify files that are never/rarely used ? 
4. identify files that are most frequently changed ?   
5. identify files that most developers have accessed ? 
6. identify files that have been committed together many number of times ? 

Việc sử dụng những dữ liệu này có thể là để loại bỏ các thông điệp như these, để cấu trúc lại mã và dọn dẹp các dự án của các tập tin không sử dụng.

Xin gợi ý cho các công cụ để đạt được cùng ..

EDIT: Chúng tôi chạy SVN trên Windows 2003.

Trả lời

3

Một công cụ đáng xem khác là ViewVC. Phiên bản mới nhất có tùy chọn để duy trì cơ sở dữ liệu cam kết. Điều này cho phép bạn tìm kiếm trên tất cả các thư cam kết và xem danh sách các thay đổi đối với tệp hoặc tệp trong thư mục được lọc theo người dùng, thời gian hoặc biểu thức chính quy. Nó cũng hỗ trợ các nguồn cấp dữ liệu RSS mà sẽ cho phép một số hình thức thông báo cho các tệp riêng lẻ.

Đối với danh sách 3, 4 và 5 trong danh sách của bạn, StatSVN được đề cập trong các câu trả lời khác sẽ có thể thực hiện việc này. Đối với một giải pháp thương mại có FishEye từ Atlassian.

Trên kho lưu trữ của chúng tôi, chúng tôi sử dụng kết hợp ViewVC và StatSVN, trước đây được sử dụng để duyệt lưu trữ và tìm kiếm thư cam kết với thông tin sau để xem thống kê.

1

nền tảng gì bạn đang sử dụng? Trên Linux, một kịch bản lệnh shell nhanh chóng sử dụng sed nên thực hiện thủ thuật.

+0

Chúng tôi sử dụng SVN trên cửa sổ. Bạn có thể chỉ ra cách sử dụng sed để có được những thông tin này không? –

1

Trong vùng đất .NET, có thư viện SharpSvn mà bạn có thể sử dụng. Để đạt được những gì bạn muốn, bạn sẽ cần phải hút tất cả các thông điệp tường trình và phân tích chúng.

5

StatSVN sẽ có thể thực hiện phần lớn điều đó cho bạn. Tuy nhiên, bạn sẽ cần phải thiết lập một tác vụ theo lịch để chạy nó trên kho lưu trữ của bạn, hoặc bạn có thể tích hợp nó vào một bản xây dựng Ant nếu bạn tình cờ sử dụng nó.

Một số tác vụ phức tạp hơn, chẳng hạn như số 6 trong danh sách của bạn, có thể sẽ yêu cầu giải pháp tùy chỉnh. Ngoài ra, vì StatSVN là nguồn mở, bạn có thể thực hiện các thay đổi cần thiết và gửi chúng trở lại dự án.

1

Bạn có thể thực hiện nhiều việc với ứng dụng dòng lệnh Subversion và một số tập lệnh (Ruby hoặc Python), nhưng đừng mong đợi mọi người ở đây viết mã cho bạn. Chi tiết triển khai sẽ phụ thuộc vào những thứ như tần suất bạn muốn chạy thống kê và mức độ repo của bạn lớn đến mức nào.

Khi xử lý dữ liệu từ trình khách dòng lệnh Subversion, bạn có thể thấy dễ sử dụng tùy chọn --xml (được chấp nhận bởi lệnh "nhật ký" và "thông tin") xuất dữ liệu ở định dạng XML.

1. search across all commit messages ? 

Chạy "svn log -v --xml" và chạy tìm kiếm văn bản trên kết quả XML (hoặc một phần của nó). Bạn có thể chỉ định tập hợp các thư cam kết nào bạn muốn tìm kiếm.

2. monitor the commits on certain important files ? 

Điều này được triển khai bằng trình kích hoạt cam kết. Xem tài liệu về máy chủ Subversion.

3. identify files that are never/rarely used ? 
4. identify files that are most frequently changed ?   
5. identify files that most developers have accessed ? 
6. identify files that have been committed together many number of times ? 

Tất cả có thể được thực hiện bằng cách sử dụng đầu ra từ "svn log --xml" và sau xử lý dữ liệu XML kết quả.

Các vấn đề liên quan