Od lat jestem wielkim fanem umieszczania licencji na rzeczy udostępniane online, aby ułatwić innym ustalenie, czy i jak mogą ponownie wykorzystać te rzeczy. Zanim GitHub zaczął delikatnie „wypychać” swoich użytkowników do dołączania plików LICENSE do ich repozytoriów, tak naprawdę nie wiedziałem, jak najlepiej to zrobić za pomocą kodu - szczególnie kodu udostępnianego publicznie na GitHub! - ale od tego czasu starałem się dobrze wykorzystywać pliki LICENCJI.
Jestem teraz w sytuacji, gdy pracowałem nad małym projektem z kilkoma innymi ludźmi, który wymaga wzmianki o kilku licencjach (z powodu kodu i bibliotek innych firm, a także plików innych niż kod). Podczas gdy moi partnerzy zajmują się tym problemem raczej „niechlujnie” - zasugerowano, że „po prostu umieszczam kod w obecnej postaci, nikogo to nie obchodzi” - wolałbym zrobić to właściwie. Problem w tym, że nie wiem, jak należy wspomnieć o kilku (różnych) licencjach na GitHub.
Widziałem kilka różnych rozwiązań na GitHub, dlatego trudno mi ocenić, czy ta odpowiedź na nieco inne pytanie jest autorytatywna. Chciałbym wiedzieć, który z poniższych - jeśli w ogóle - jest najczęstszy lub czy istnieją inne, dodatkowe sposoby na zrobienie tego.
- Utwórz jeden plik LICENCJA i umieść tam opisy wszystkich różnych licencji. ( Pytania : Czy powinny być ułożone w określonej kolejności? Czy zacznę od podania nazw wszystkich zawartych w nich licencji, aby uzyskać lepszy przegląd)?
- Tworzenie jednego pliku licencja na licencji używanych i wymienić je
LICENSE.md
,LICENSE.LibNameA.md
,LICENSE.AssetsB.md
itd., Jak sugeruje się w połączonej odpowiedzi. ( Pytanie : Nazewnictwo opierałoby się na nazwach projektów? Nie nazwach licencji? Gdybym użył więcej niż jednej licencji na materiał z własnym wkładem, czy wymieniłbym je wszystkie w „głównej”LICENSE.md
? Jeśli nie, co zrobiłbym zamiast tego?) - Utwórz dwa pliki LICENCJI : jeden zawierający listę licencji na zawartość „główną”, tj. Cały utworzony przez siebie kod / zasoby; jeden na wszystkie materiały stron trzecich. ( Pytania jak wyżej : czy jest jakiś konkretny schemat nazewnictwa, którego należy użyć, i kolejność, w jakiej należy wymienić materiały stron trzecich?)
Wreszcie, jeśli poprawnie zrozumiałem różne wyjaśnienia i projekty GitHub dotyczące ich API licencji, tylko „główny” plik LICENCJI zostanie wzięty pod uwagę przy określaniu licencji repo (chociaż nie byłem w stanie ustalić, która licencja zostanie wybrana jeśli wymieniono kilka).