Який етикет перейменування вилки з відкритим кодом?


29

Я хочу розпрощатись на Github на тестову рамку тестування Java TestNG (ліцензія Apache 2), щоб я міг додати / змінити деякі незначні речі відповідно до моїх потреб.

Навряд чи всі мої зміни будуть затверджені в основному проекті чи інші люди будуть використовувати мою вилку. Це жодним чином не буде конкуренцією основного проекту.

Тепер, з точки зору найменування, я хочу змінити назву артефакту (testng-mycompany) або версію (6.8.mycompany), щоб не було плутань з офіційною версією в моєму сховищі Maven. Чи вважатиметься це поганим етикетом? Якщо так, то який найкращий підхід відрізнити вашу вилку?


9
Дивіться також проект Forking щодо процесу Github та перетину етикету та розгалуження тегів (який наразі має ваше запитання та пов'язаний з ним).

Відповіді:


5

Роздрібнюйся і роби найгірше / найкраще.

Програмне забезпечення з відкритим кодом завжди стосувалося того, щоб люди могли адаптуватися, змінюватись і кидати виклик умовам Важкою частиною створення проекту є розвиток нової спільноти навколо вас, яка вірить у те, що ви робите.

Наприклад, я міг би завантажити джерело для Apache, внести кілька модифікацій і назвати це наступною великою справою .. але якщо ніхто більше не потрапляє на борт, то я застряг, граючи на доповнення до мільйонів нових функцій та виправлень помилок, наданих основна спільнота Apache.

Довідка: Гра престолів.

Замість того, як fork TestNG, можливо, буде простіше писати модулі / доповнення до нього поверх існуючого Repo, тому вам потрібно буде лише підтримувати власний код.

Якщо ви відчуваєте необхідність змінити TestNG, можливо, це просто неправильний інструмент для роботи.

[Відмова, я ніколи не чув про TestNG]


-1. Це жодним чином не відповідає на питання.
Джон Бентлі

2

Проекти з відкритим кодом призначені для вдосконалення. Чудова річ у проектах з відкритим кодом - це те, що вони заохочують до зовнішньої співпраці. Коли ви вирішили роздрібнити проект, ви просто заявляєте, що ви взяли на себе ініціативу створити власний "аромат" чи "інтерпретацію" проекту. Багато команд в кінцевому підсумку розгортають власні проекти, щоб розширити базу проекту для кількох цілей.

Приклад: Webkit і Blink

Що стосується називання, ви хочете бути максимально чіткими. Основні номенклатурні практики розвитку досить неоднозначні.

Перейдіть до: Якою "умовою іменування версій" ви користуєтесь?

Якби ви роздвоювались, ви хочете вказати своє "Ім'я", а потім точно передати, яку версію ви використовуєте.

Я не бачу причини роздрібнюватися, якщо ви не плануєте брати проект у принципово іншому напрямку, ніж те, що було призначено. Я виявив, що в більшості випадків додаткові функції / модифікації, які я б запропонував, пропонували чудову можливість навчання з обох напрямків. Якщо у мене щось є, то з Дейвом я маю ідею створити окремі модулі, щоб сприяти модульності, зберігаючи цілісність основного проекту.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.