Trên một dự án gần đây, tôi đã phải sửa đổi một thư viện nguồn mở để giải quyết một thiếu hụt chức năng. Tôi đã theo dõi thực hành tốt nhất của SVN về việc tạo kho lưu trữ "nguồn nhà cung cấp" và thực hiện các thay đổi của tôi ở đó. Tôi cũng đã gửi bản vá cho danh sách gửi thư của dự án đó. Thật không may, dự án chỉ có một vài người duy trì và họ rất chậm để cam kết cập nhật.Phương pháp hay nhất để quản lý thay đổi đối với thư viện nguồn mở của bên thứ ba?
Tại một thời điểm nào đó, tôi hy vọng thư viện sẽ được cập nhật và tôi hy vọng dự án của tôi sẽ muốn sử dụng thư viện được nâng cấp. Nhưng bây giờ tôi có một vấn đề tiềm năng ...
Tôi không biết liệu bản vá của mình có được áp dụng cho bản phát hành thư viện của bên thứ ba trong tương lai không. Tôi cũng không biết liệu bản vá của mình có còn tương thích với việc triển khai nội bộ các thành phần được nâng cấp hay không. Và trong mọi khả năng, ai đó sẽ duy trì dự án của tôi trước thời điểm đó.
Tôi có nên đặt tên thư viện theo cách đặc biệt để rõ ràng chúng tôi đã thực hiện các sửa đổi đặc biệt (ví dụ: commons-lang-2.x-for-my-project.jar)? Tôi có nên ghi lại bản vá và tham khảo vị trí SVN và liên kết đến mục danh sách gửi thư trong README không? Không có lựa chọn nào mà tôi có thể nghĩ là có vẻ là một minh chứng ngu xuẩn trong một kịch bản nâng cấp.
Thực tiễn tốt nhất cho việc này là gì?
Tôi đã đọc chương này một lần trước và mặc dù tôi đã làm mọi việc đúng cách. Có một số sắc thái rất quan trọng trong cuộc thảo luận này mà tôi đã chải qua.Cảm ơn vì đã làm cho tôi đọc lại chương đó - nó đã có ý nghĩa hơn rất nhiều. –
@ Jeff - cảm ơn phản hồi. Tôi rất vui vì nó đã giúp. –