Jaki jest ogólny przepływ pracy, gdy chcę dodać funkcję do aplikacji typu open source, której pierwotnie nie napisałem? Jak poznać kod? Jak znaleźć miejsce, które należy zmienić lub dodać? Jak mogę dokonać zmiany, nie psując niczego innego? Jak sprawdzić, czy wszystko nadal działa?
Jakie są ogólne wytyczne dotyczące takiego projektu?
open-source
Dani
źródło
źródło
Odpowiedzi:
Jest jakiś protokół, wszyscy mniej więcej z niego korzystają z czasem, ale tutaj jest rozwinięty.
Zaczynasz trochę nawigować po kodzie
Jeśli tak naprawdę nie rozumiesz nic na temat kodu ...
Jeszcze
Znajdziesz miejsce, które chcesz zmienić.
Jeśli zastanawiasz się nad drobnymi szczegółami, pytasz autora / listę mailingową i wyjaśniasz swoje zamiary.
Przechodzisz do głównego katalogu dystrybucji (najwyższy wychodzi z rozpakowywania / rozpakowywania)
ty
diff -ur . > mypatch.path
Wysyłasz
mypatch.patch
do autora, wyjaśniając, co zrobiłeś, dlaczego to zrobiłeś i (ponieważ już tam jesteś) wyraźnie oświadczasz, że zrzekasz się praw do łatki.jeśli autorowi nie podoba się Twój wkład
sprawdzasz, czy istnieje sposób na wydanie modyfikacji jako wtyczki
jeszcze
rozpalasz sytuację na swoim blogu i wypuszczasz tam łatkę, możesz ją bezpłatnie pobrać i wypróbować z wyjaśnieniem i zniewagami,
od czasu do czasu nawiedzasz system błędów / listę mailingową, próbując kupić wsparcie dla twojej łatki. Unikaj zbanowania.
w żadnym z tych przypadków nie rozwidlasz kodu , ponieważ jest to bardzo męczący i mało opłacalny proces, którego nie będziesz w stanie nadążyć za czasem: spowoduje to, że użytkownicy będą smutni i zdezorientowani. Widły powinny się zdarzyć tylko wtedy , gdy duża korporacja próbuje zastraszyć swoje decyzje na OSS .
jeszcze
Z boku: istnieje ostatnia alternatywa dla
diff -ur .
łatki i jest to sposób github .(teraz masz kopię ich kodu na swoim koncie)
i powiedz głównemu autorowi (autorom), aby przejrzał twój projekt github.
Jeśli im się spodoba, zsynchronizują się .
źródło
Zazwyczaj
Gdyby to był przypadkowy projekt systemu operacyjnego, najprawdopodobniej naprawiłbyś drobne błędy tu i tam.
W końcu prześlesz sporo zmian jako „łatkę”.
Zwykle dostajesz prawa do zatwierdzania, jeśli twoje rzeczy są dobre.
Mówię ogólnie i tak niejasno i niespecyficznie, jak to możliwe z powodu pytania
źródło