Дивлячись на популярні проекти з відкритим кодом, які мають на увазі, я не бачу жодної папки "contrib":
- jQuery ,
- Експрес ,
- Sass ,
- МЕНШЕ ,
- MongoDB ,
- Редіс ,
- Ляльковий ,
- Шеф-кухар
- NUnit ,
- Рубі на рейках ,
- Ларавель ,
- Дженкінс ,
- Clojure ,
- Рубін .
Єдина, яка має папку "contrib" - це Django. Для Django роль цієї папки вже пояснена в документації :
Django прагне дотримуватися філософії Python "включені батареї". Він постачається з різноманітними додатковими, необов'язковими інструментами, які вирішують поширені проблеми веб-розробки.
Цей код існує в django/contrib
дистрибуції Django. Цей документ дає змогу скинути пакунки в додаток, а також будь-які залежності, які вони мають.
Глава 16 книги "Джанго" містить більш детальний опис ролі цього каталогу та списку вмісту.
Інший приклад - Solr . З gitstats
, ми можемо отримати статистичні дані про вкладників.
Robert Muir 22.09%
Michael McCandless 13.60%
Mark Robert Miller 9.73%
Uwe Schindler 8.17%
Yonik Seeley 5.56%
Steven Rowe 5.55%
Тоді ми можемо вибрати лише contrib
каталог, запустивши:
git filter-branch --subdirectory-filter solr/contrib --prune-empty
і отримайте статистику ще раз:
Robert Muir 19.62%
Steven Rowe 8.87%
Mark Robert Miller 8.33%
Uwe Schindler 8.06%
James Dyer 7.80%
Тож провідні автори практично однакові, це означає, що це не внески сторонніх людей. Переглядаючи каталоги всередині contrib
папки, здається, що це ще раз "різноманітні додаткові, необов'язкові інструменти", точно так само, як у Django. Наприклад, вам не потрібен обробник запитів на імпорт даних, щоб змусити Solr працювати, але якщо ви хочете імпортувати дані з бази даних або XML, приємно мати їх у contrib
папці. Те ж саме для зменшення карт, можливо, вам це не потрібно, але є випадки, коли ви це робите.
Це плагіни чи додатки? Я б не використовував цей термін. Плагіни та додатки мають певну інтеграцію з основним додатком. Наприклад, не очікується, що плагін буде працювати окремо, але він розміщений в основній програмі. З іншого боку, contrib
містить інструменти, які, ймовірно, можуть працювати окремо.