Jaka jest etykieta zmiany nazwy widelca typu open source?

29

Chcę rozwidlić w Github platformę testową Java TestNG (licencja Apache 2), aby móc dodawać / zmieniać niektóre drobne rzeczy, które odpowiadają moim potrzebom.

Jest mało prawdopodobne, że wszystkie moje zmiany zostaną zatwierdzone w głównym projekcie lub że inni ludzie skorzystaliby z mojego widelca. W żaden sposób nie byłby to konkurs na główny projekt.

Teraz, jeśli chodzi o nazewnictwo, chcę zmienić nazwę artefaktu (testng-mojafirma) lub wersję (6.8.mycompany), aby nie było pomyłek z oficjalną wersją w moim repozytorium maven. Czy można to uznać za kiepską etykietę? Jeśli tak, jakie jest najlepsze podejście do wyróżnienia widelca?

Bogdan Calmac
źródło
9
Zobacz także Projekt Forking dotyczący procesu Github oraz przecięcie etykiety i rozwidlenia tagów (które ma obecnie Twoje pytanie i powiązane).

Odpowiedzi:

5

Odsuń się i zrób swoje najgorsze / najlepsze.

Oprogramowanie typu open source zawsze polegało na umożliwieniu osobom dostosowywania się, zmieniania i kwestionowania konwencji. Trudną częścią tworzenia projektu jest stworzenie wokół siebie nowej społeczności, która wierzy w to, co robisz.

Na przykład mógłbym pobrać źródło dla Apache, wprowadzić kilka modyfikacji i nazwać to kolejną wielką rzeczą ... ale jeśli nikt inny nie wejdzie na pokład, utknąłem w grze, aby nadrobić zalew nowych funkcji i poprawek błędów podstawowa społeczność Apache.

Odniesienie: Gra o tron.

Zamiast rozwidlać TestNG, może być prostsze pisanie modułów / dodatków dla istniejącego repozytorium, w ten sposób będziesz musiał tylko utrzymywać swój własny kod.

Alternatywnie, jeśli czujesz potrzebę zmiany TestNG, być może jest to po prostu niewłaściwe narzędzie do tego zadania.

[Oświadczenie, do tej pory nigdy nie słyszałem o TestNG]

dave.zap
źródło
-1. To w żaden sposób nie odpowiada na pytanie.
Jon Bentley,
2

Projekty Open Source mają być zaawansowane. Wspaniałą rzeczą w projektach typu open source jest to, że zachęcają do współpracy zewnętrznej. Decydując się na rozwidlenie projektu, po prostu oświadczasz, że podjąłeś inicjatywę stworzenia własnego „smaku” lub „interpretacji” projektu. Wiele zespołów ostatecznie rozwinie swoje własne projekty, aby rozszerzyć bazę projektu do wielu celów.

Przykład: Webkit i Blink

Jeśli chodzi o nazewnictwo, chcesz być tak jasny, jak to możliwe. Podstawowe praktyki nomenklatury w rozwoju są raczej niejednoznaczne.

Idź do: Jakiej „konwencji nazewnictwa wersji” używasz?

Jeśli miałbyś rozwidlać, chciałbyś podać swoje „Imię”, a następnie przekazać dokładnie, jakiej wersji używasz.

Nie widzę powodu do rozwidlenia, chyba że planujesz obrać projekt w zasadniczo innym kierunku niż zamierzony. Przekonałem się, że w większości przypadków dodatkowe funkcje / modyfikacje, które zaproponowałbym, oferowały doskonałą możliwość uczenia się z obu kierunków. Jeśli już, jestem z Dave'em w sprawie stworzenia oddzielnych modułów w celu promowania modułowości przy jednoczesnym zachowaniu integralności głównego projektu.

Colt Stumpf
źródło