В недавнем проекте мне пришлось изменить библиотеку с открытым исходным кодом, чтобы устранить функциональный недостаток. Я следил за лучшей практикой SVN по созданию репозитория «источник-поставщик» и внес свои изменения там. Я также отправил исправление в список рассылки этого проекта. К сожалению, в проекте есть только несколько сопровождающих, и они очень медленно фиксируют обновления.Лучшая практика управления изменениями сторонних библиотек с открытым исходным кодом?
В какой-то момент я ожидаю, что библиотека будет обновлена, и я ожидаю, что мой проект захочет использовать обновленную библиотеку. Но теперь у меня есть потенциальная проблема ...
Я не знаю, применил ли мой патч к этой будущей версии сторонней библиотеки. Я также не знаю, будет ли мой патч по-прежнему совместим с внутренней реализацией обновленных компонентов. И, по всей вероятности, кто-то еще будет поддерживать мой проект к этому моменту.
Должен ли я назвать библиотеку особым образом, поэтому ясно, что мы внесли специальные изменения (например, commons-lang-2.x-for-my-project.jar)? Должен ли я просто документировать патч и ссылаться на местоположение SVN и ссылку на элемент списка рассылки в README? Ни один вариант, о котором я не могу думать, кажется безумным в сценарии обновления.
Какова наилучшая практика для этого?
Я читал эту главу раньше и хотя я делал все правильно. В этой дискуссии есть некоторые очень важные нюансы, которые я помыл.Спасибо, что заставил меня снова прочитать эту главу - теперь это имеет гораздо больше смысла. –
@Jeff - спасибо за отзыв. Я рад, что это помогло. –