Jeśli GitHub współdziała z Git, a Git jest licencjonowany na licencji GPLv2, czy GitHub nie powinien być open source?


58

Ponieważ Git jest licencjonowany na licencji GPLv2 i, o ile rozumiem, GitHub współpracuje z Git, czy cała baza kodów GitHub nie powinna być dostępna na zasadach licencji otwartej na licencji zgodnej z GPL?


59
Czy możesz wskazać konkretny akapit w GPL, który mówi o interakcji? Wskazówka: nie ma jednego.
Jörg W Mittag,

14
@ JörgWMittag: zamieszanie w stosunku do kogoś, kto nie jest dobrze zorientowany w temacie, czy dostęp do sieci oznacza „zwalnianie” czy propagowanie, nie jest nieuzasadnione.
whatsisname

1
To proste: github nie przekazuje nikomu licencjonowanej pracy - a raczej, w jakimkolwiek stopniu to robi, przestrzega warunków licencji. Czy możesz wskazać na pracę „utrwaloną na materialnym nośniku”, która wręcza ci, która zawiera pracę, na którą licencjonowali inni na podstawie GPL?
jthill

3
@TobiasKienzler należy zauważyć, że „git” to dwie odrębne, ale powiązane rzeczy - po pierwsze jest to standard definiujący konkretną metodę wersjonowania kodu źródłowego, a po drugie referencyjna implementacja tego standardu. Obie rzeczy mają tę samą nazwę - git. Tylko jedna z tych rzeczy może być licencjonowana na licencji GPL, AGPL itp. - jeśli utworzysz własną implementację ze standardu, możesz licencjonować ją w dowolny sposób, a twórcy standardów lub implementacji referencyjnej nie mają podstaw, by poprzeć do twojego kodu.
Moo

6
@TobiasKienzler ostatnia sprawa sądowa Oracle-Google dotycząca specyfikacji Java zasadniczo oznacza, że ​​nie ma licencji, której można by użyć, aby zapobiec ponownemu wdrożeniu standardu.
Moo

Odpowiedzi:


111

3 powody, dla których:

  1. Zgodnie z warunkami GPL osoby uzyskujące dostęp do GitHub przez Internet nie są uważane za udostępnianie (lub propagowanie w warunkach GPLv3), dlatego GitHub nie musi udostępniać swojego kodu źródłowego. Jeśli GitHub miałby sprzedać wersję swojej usługi (co mogą zrobić, nie zadałam sobie trudu, aby sprawdzić), gdzie wysyłają ci swoje oprogramowanie, a Ty uruchamiasz instancję GitHub wewnętrznie w swojej sieci, wtedy może być wymagane wysłać kod źródłowy, chyba że:

  2. GitHub może bardzo dobrze uzyskiwać dostęp do klienta Git za pomocą wywołań z wiersza poleceń, w którym to przypadku uważa się, że komunikuje się „na odległość ramienia” , a zatem nie czyni GitHub działaniem pochodnym, a zatem nie podlega wymaganiom GPL.

  3. Ponadto GitHub może nawet nie używać oprogramowania Git i napisał własną podstawową „implementację git” i ponownie wdrożył swoje interfejsy w celu zachowania zgodności, w którym to przypadku wymagania GPL ponownie nie miałyby zastosowania.


47
W rzeczywistości AFAIK, GitHub ma własną implementację Git, więc licencja na implementację Gita przez Linusa Torvalda jest nieistotna.
Jörg W Mittag

18
Github wydaje swoje oprogramowanie. enterprise.github.com
Bryan Chen

8
„3) Ponadto GitHub może nawet nie używać oprogramowania Git i napisał własną podstawową„ implementację git ”i ponownie zaimplementował swoje interfejsy, aby zachować zgodność, w którym to przypadku wymagania GPL ponownie nie miałyby zastosowania. „ Myślę, że @whatsisname miał rację, ponieważ Github używa libgit2. linki: libgit2.github.com , źródło: github.com/libgit2/libgit2
andytime

8
Ważne jest, aby pamiętać, że LibGit2 jest licencjonowany na licencji GPL2 z wyjątkiem linkowania .
RubberDuck,

8
@RubberDuck: Ważne jest, aby pamiętać, że libGit2 jest własnością github, a zatem nie potrzebują licencji, aby z niego korzystać, dlatego nie muszą przestrzegać tego, na co jest licencjonowane. Nawet jeśli ktoś się z tym kłóci, to jako właściciel libgit2 mogą sami sobie licencjonować na podstawie licencji niestandardowej.
slebetman

6

Oprócz innych odpowiedzi dodam, że poglądy FSF na temat tego, kiedy dwa współpracujące programy tworzą jedną pracę, są dość niejasne:

Co więcej, poglądy te nigdy nie były testowane w sądzie, z wyjątkiem Niemiec:

Sprawa jest w toku, ale do tej pory sędzia ocenił, że jedna z kluczowych kwestii wymienionych przez FSF w celu ustalenia, czy dwa programy tworzą jedno dzieło, a mianowicie współużytkowanie tej samej przestrzeni adresowej, nie ma związku z (niemieckim) prawem autorskim. Należy zauważyć, że FSF nie bierze udziału w procesie, ale strona procesująca się opowiada się za poglądem FSF na agregację / wyprowadzenie.

Tak więc, jeśli chodzi o osoby piszące następny Github, nie zakładaj, że jesteś po złej stronie prawa, kiedy FSF mówi, że jesteś (i odwrotnie).


Musiałbym założyć, że jest to rzadkie w sądzie, ponieważ jest to coś, czego nie można egzekwować. Pamiętam rozmowę Stallmana, w której wspomniał o oprogramowaniu DRM firmy zajmującej się technologią na dysku, a oprogramowanie zostało zbudowane z pozostawionych na dysku wolnych komponentów. Sam Stallman w prezentacji zauważył, że sprzedawca nigdy nie stanął przed takim postępowaniem prawnym.
Lan

1
@Lan No cóż, DRM to osobny problem, który wchodzi w grę tylko z nowszym GPLv3, a nie ze starszym GPLv2. Jakakolwiek interpretacja GPLv2, sprzedawca ma prawo dostarczyć ci źródło komponentów copyleft GPLv2, nie oferując żadnego praktycznego sposobu wprowadzania modyfikacji na swoim zastrzeżonym sprzęcie.
DepressedDaniel

@Lan Nie zakładaj tego. Co najmniej równie prawdopodobne, biorąc pod uwagę historię egzekwowania prawa, jest to, że osoby naruszające prawo stojące przed działaniami prawnymi zwykle przestrzegają przepisów. To, czy można je egzekwować, nie jest tym samym, co to, czy ktoś poświęca czas, aby to zrobić, a Busybox znajduje się w interesującym miejscu, w którym prawdopodobnie zostanie uwzględniony w produktach niezgodnych, a autor jest gotowy na wyzwanie.
Chrylis

@chrylis Nie jestem pewien, którego autora BusyBox masz na myśli. Rob Landley wszczął proces sądowy, ale był oburzony wynikami i ostatecznie opuścił BusyBox, aby pracować na ToyBox (który całkowicie unika GPL dzięki licencji BSD): brownrudnick.com/blog/emerging-technologies/ ... Zasadniczo, zamiast przestać podawać do wiadomości publicznej jakiekolwiek modyfikacje BusyBox (nigdy ich nie było), nadużywano sytuacji, by żądać pieniędzy na finansowanie przyszłych procesów sądowych i otwieranie zastrzeżonych komponentów całkowicie niezwiązanych przez BusyBox z żadną teorią prawa. Smutny. Po prostu smutny.
DepressedDaniel

Co więcej, wyjaśnienia FSF, co oznaczają przez „łączenie”, nie mają technicznego sensu. Na przykład każdy, kto korzysta z Javy, wie, że zdanie „Jeśli moduły są zaprojektowane do działania w połączonej przestrzeni we wspólnej przestrzeni adresowej, prawie na pewno oznacza to połączenie ich w jeden program”. to nonsens.
Michael Kay

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.