Kompletny przewodnik ułatwiający rozpoczęcie podróży z wkładem w Drupala

Opublikowany: 2022-08-23

Wstęp

Będąc systemem zarządzania treścią o otwartym kodzie źródłowym, Drupal zachęca społeczność programistów i użytkowników na całym świecie do udziału w różnych formach. Może to być kod, który zawiera poprawki do głównych i wniesionych projektów, w sposób niekodujący, w tym marketing, dokumentacja, organizacja wydarzeń lub wsparcie finansowe projektu. Ten artykuł przeprowadzi Cię przez wszystko, co musisz wiedzieć, aby rozpocząć swoją przygodę z kodem Drupal od zera.

Dlaczego warto przyczynić się do Drupal

Oczywiście, oddanie się projektowi, który wspiera sposób, w jaki pracujesz i prawdopodobnie żyjesz na co dzień, może być wystarczająco silnym powodem, aby dobrowolnie przyczynić się i ulepszyć projekt open source. Ale jeśli szukasz trochę więcej zachęty do wniesienia wkładu, oto niektóre z korzyści, które zauważyliśmy:

  • Twój wkład pomaga Drupalowi być na bieżąco z postępami we wszystkich jego zależnościach w czasie
  • Możesz zdobyć więcej wiedzy o Drupalu, co z kolei pozwoli Ci budować lepsze aplikacje dla Twoich klientów
  • Daje przewagę konkurencyjną organizacjom, które sponsorują czas na wkład, ponieważ ich programiści zdobywają więcej umiejętności i wiedzy oraz prezentują się jako ekspert
  • Współpracuj i spotykaj się z ludźmi, którzy mają te same zainteresowania co Ty

Jak wnieść swój wkład

Na początek utwórz dla siebie konto na drupal.org i zaktualizuj swój profil o wymagane dane.

Tworzenie konta

Tworzenie konta na Drupal.org

Poszukaj problemu

Po utworzeniu konta następnym krokiem byłoby znalezienie właściwego problemu. Może się różnić w zależności od Twoich zainteresowań:

1. Możesz znaleźć problem z kolejki problemów - https://www.drupal.org/project/issues. Aby uzyskać bardziej szczegółowe wyszukiwanie, możesz kliknąć „Wyszukiwanie zaawansowane” i użyć filtrów.

  • Tagi zgłoszeń — zgłoszenia są dołączane różnymi tagami. Znacznik „początkujący” wskazuje, że problem wymaga prostej naprawy i każdy początkujący może go wybrać, znacznik „Wymaga dokumentacji” wskazuje, że problem wymaga pewnej zmiany dokumentacji i tak dalej.
  • Stan sprawy — po utworzeniu sprawa przechodzi przez różne stany. Na podstawie bieżącego stanu problemu możesz zdecydować, jakie dalsze kroki należy wykonać.
  • Priorytet problemu — określa priorytet problemu, niezależnie od tego, czy jest to błąd krytyczny, czy może to być drobna poprawka.
  • Kategoria problemu — wskazuje kategorię problemu, niezależnie od tego, czy jest to błąd, zadanie, czy może to być nowe żądanie funkcji do projektu.
  • Konkretny projekt - Tutaj możesz bezpośrednio określić projekt, który Cię interesuje.
Filtr problemów

Filtry problemów

2. Lub zacznij od projektu, nad którym zawsze byłeś zainteresowany, odwiedzając stronę module/theme/profile - https://www.drupal.org/project/<nazwa_projektu> . Na prawym pasku bocznym poszukaj linku „Wszystkie problemy” — https://www.drupal.org/project/issues/<project_name>?categories=All

3. Lub pracuj nad błędem, na który natknąłeś się w core, lub nad jakimikolwiek modułami/motywami/profilami, które zostały dodane podczas pracy nad projektem. To także właściwy sposób na wniesienie wkładu. Należy zawsze ćwiczyć utrzymywanie „trybu kontrybutora” WŁĄCZONY nawet podczas pracy nad projektami, co daje możliwość zbadania i rozwiązania ukrytych problemów!

Cykl życia problemu z Drupalem

Po utworzeniu sprawa przechodzi przez różne stany. Poniżej znajdują się różne statusy problemów, na które możesz się natknąć:

  1. Aktywna — gdy tworzona jest nowa sprawa, jest ona w stanie Aktywna.
  2. Przegląd potrzeb — gdy problem wymaga rozwiązania, jest on w stanie Wymaga pracy.
  3. Wymaga pracy — po wybraniu problemu, pomyślnym przesłaniu poprawek i pomyślnym przejściu wszystkich przypadków testowych stan problemu należy zmienić na Wymaga przeglądu.
  4. Zweryfikowane i przetestowane przez społeczność — po sprawdzeniu problemu przez dowolnego współautora, problem jest przenoszony do stanu „Przejrzane i przetestowane przez społeczność” (RTBC), w którym jeden z członków podstawowego zespołu społeczności sprawdza go.
  5. Naprawiono — gdy problem przechodzi ze stanu RTBC, jest przenoszony do stanu Naprawiono.
  6. Zamknięty (naprawiony) — po osiągnięciu stanu Naprawiono problem automatycznie przechodzi do stanu Zamknięty (naprawiony) w ciągu dwóch tygodni. To ostatni stan problemu.
  7. Zamknięty (duplikat) — Gdy tworzony jest jakikolwiek problem, który jest duplikatem wcześniejszego, zostaje bezpośrednio zamknięty jako Zamknięty (duplikat).
  8. Zamknięte (nie da się naprawić) — ten stan oznacza, że ​​problem nie ma rozwiązania.
  9. Zamknięte (działa zgodnie z przeznaczeniem) — ten stan oznacza, że ​​zgłoszony problem zapewnia funkcjonalność taką, jaka powinna, a więc została przeniesiona do „działa zgodnie z przeznaczeniem”. Innymi słowy, podniesiony problem nie jest błędem, ale funkcją.
  10. Zamknięty (nie można odtworzyć) — Gdy problem nie jest odtwarzalny, zostaje przeniesiony do tego stanu.
  11. Zamknięty (nieaktualny) — gdy problem jest zbyt stary, aby go naprawić, lub zostanie naprawiony w ramach innego problemu z modułem, stan może być dla tego problemu zamknięty (nieaktualny).
  12. Patch (do przeniesienia) - Kiedy łatka ma zostać przeniesiona dla innych wersji modułu Drupal/Contributed.
  13. Odłożone — gdy problem/funkcja/błąd zostanie odłożony przez autora/społeczność i nie wymaga naprawy.
  14. Przełożone (opiekun potrzebuje więcej informacji) — gdy zgłaszany jest problem, ale według opiekuna modułu Contributed, potrzeba więcej informacji o problemie, aby go naprawić.

Utwórz problem

Aby utworzyć zgłoszenie dla modułu. Przejdź do kolejki zgłoszeń modułu https://www.drupal.org/project/issues/<project_name>?categories=All i kliknij Utwórz nowe zgłoszenie .

Wydanie pokazu slajdów

Następnym krokiem jest podanie szczegółów sprawy, którą należy utworzyć.

Synchronizuj

1. Tytuł: Dodaj tytuł problemu.
2. Projekt: Nazwa projektu zostanie wybrana automatycznie.
3. Kategoria: Wybierz kategorię projektu. Istnieje 5 kategorii

  1. Bug: Błąd to błąd funkcjonalny w systemie. Na przykład błąd php, utrata danych, wyciek pamięci, niepoprawna lub wprowadzająca w błąd dokumentacja, nieprawidłowy lub wprowadzający w błąd tekst interfejsu użytkownika itp.
  2. Zadanie: To nie jest błąd funkcjonalny, ale „trzeba zrobić” przed wydaniem. Na przykład Refaktoryzacja kodu, aby był bardziej czytelny i łatwy w utrzymaniu, Dodanie automatycznych testów, Aktualizacja kodu do nowych API, Poprawa standardów kodowania itp.
  3. Prośba o nowe funkcje : Jest to prośba o dodanie do modułu zupełnie nowej funkcjonalności.
  4. Prośba o wsparcie: Jeśli potrzebujemy pomocy w jakiejkolwiek części modułu lub chcesz wiedzieć o funkcjonalności rdzenia drupala. Możemy oznaczyć prośby o pomoc i dodać pytanie.
  5. Plan: Ten tag jest używany, gdy masz problem, którego nie można rozwiązać za pomocą jednego problemu. Problemy z planowaniem często zawierają wiele podetapów związanych z problemami „dzieci”.

4. Priorytet: Wybierz priorytet problemu. Tutaj mamy krytyczne, główne, normalne i drugorzędne. Wybierz normalne, chyba że to naprawdę poważne. Możesz też wybrać go w normalny sposób i pozwolić opiekunowi lub recenzentowi zmienić go zgodnie z wymaganiami.

5. Status: Wybierz Aktywny dla nowych problemów.
6. Wersja: Wybierz wersję projektu, w której problem ma zostać naprawiony.
7. Składnik: Wybierz najbliższe dopasowanie do problemu. Można je później zmienić. Komponenty tutaj są oparte na module. Opcje różnią się w zależności od modułu.
8. Przypisane: Sprawę można przypisać każdemu. Nie jest to obowiązkowe i można je przypisać później.
9. Tagi: Oznacz problem odpowiednimi tagami. Pole to może pozostać puste, jeśli nie znamy tagów problemów. Nie jest to obowiązkowe i można je później oznaczyć.
10. Podsumowanie sprawy i relacje: Rozwiń pole, a edytor doda szczegóły sprawy. W edytorze jest kilka predefiniowanych nagłówków i możemy je zastąpić, jeśli nie chcemy ich w szczegółach wydania.

  1. Problem nadrzędny: aby oznaczyć problem nadrzędny.
  2. Problem pokrewny: Aby oznaczyć pokrewny problem.

11. Pliki: Możemy dodać pliki związane ze sprawami lub możemy wgrać łatkę do sprawy podczas tworzenia pod plikami. I zapisz problem.

Po zapisaniu wydania. Utworzona sprawa zostanie dodana do kolejki spraw odpowiedniego modułu.

Aby utworzyć zgłoszenie dla rdzenia drupala https://www.drupal.org/node/add/project-issue/drupal to link. A kroki będą takie same, jak tworzenie problemu w module. Ale jest kilka wskazówek, jak stworzyć podstawowy problem, który zostanie wyświetlony na powyższym linku.

Image removed.

Oto wskazówki, których należy przestrzegać przy tworzeniu głównego zagadnienia.

Utwórz łatkę

Są tu 2 przypadki

  1. Utwórz nową łatkę
  2. Zaktualizuj istniejącą poprawkę.

Aby stworzyć nową łatkę

  • Przejdź do zakładki kontroli wersji modułu. https://www.drupal.org/project/ <nazwa_projektu>/git-instructions to link do strony.
  • Wybierz oddział do pracy i kliknij przycisk Pokaż.
Synchronizacja obrazu

Kliknięcie przycisku show spowoduje wyświetlenie polecenia git, skopiowanie i uruchomienie polecenia w terminalu oraz zmianę katalogu na sklonowany moduł.

  • Wprowadź zmiany, aby rozwiązać problem.
  • Polecenie tworzenia łatki to:
git diff > <issue-description (optional)>-<issue-number>-<comment-number>.patch
Usuń rdzeń

  1. Tytułem wydania będzie opis wydania, w którym wszystkie litery powinny być pisane małymi literami, a spacje muszą być wypełnione podkreśleniami. Jest to opcjonalne.
  2. Numer wydania będzie podany w adresie URL problemu. Będzie to unikalne w przypadku problemów, które będą wymagane przy nazewnictwie pliku łatki.
  3. Numer komentarza to identyfikator ostatniego komentarza, w którym zostanie przesłana łatka.
Uwagi

Rozważ, że musisz dodać nowy plik do łatki. Nowy plik nie będzie śledzony, a polecenie git diff nie będzie go śledzić.

Aby dodać nowy plik do łatki

  1. Dodaj nowy plik za pomocą polecenia git add
  2. Biegać
 git diff HEAD > <issue-description (optional)>-<issue-number>-<comment-number>.patch

Aby zaktualizować istniejącą poprawkę

1. Sklonuj projekt, do którego chcesz dodać łatkę.
2. Przejdź do strony wydania, kliknij prawym przyciskiem myszy łącze poprawki i kliknij łącze Kopiuj adres.
3. Pobierz łatkę do swojego lokalnego komputera za pomocą polecenia curl lub wget.

Aby pobrać łatkę za pomocą polecenia curl:

 curl -O <paste the address link of the patch>


4. Aby zastosować poprawkę, uruchom polecenie:

 git apply <patch name>


5. Po zastosowaniu łatki otrzymasz zmiany w łatce w swoim lokalnym. Dodaj kolejne zmiany wymagane do poprawki i utwórz nową poprawkę.

Kiedy aktualizujemy istniejącą łatkę, musimy utworzyć plik interdiff. Plik Interdiff to nic innego jak różnica między starą łatką a nową łatką. Pomoże to recenzentowi poznać zmiany wprowadzone w nowej łatce.

Poniżej znajduje się polecenie tworzenia interdiff:

 interdiff <old-patch> <new patch> > interdiff_<old-patch-comment-number>-<new-patch-comment-number>.txt

Weź pod uwagę, że masz starą łatkę do pobrania 3302030-2.patch i nową, zaktualizowaną poprawkę, którą utworzyłeś 3302030-3.patch. Aby utworzyć różnicę między tymi dwoma plikami, poleceniem byłoby:

 interdiff 3302030-2.patch 3302030-3.patch > interdiff_2-3.txt

Prześlij łatkę

Po utworzeniu łatki musimy ją przesłać.

Aby przesłać poprawkę przejdź do strony wydania.

1. Wydaj metadane

Metadane

W metadanych sprawy zmień status na przegląd potrzeb. Cofnij przypisanie problemu, jeśli jest on przypisany do Ciebie, i w razie potrzeby dodaj lub usuń tagi.

2. Przypisz ten wkład

Atrybut

Sprawdź odpowiednie opcje i dodaj organizację, jeśli pracujesz dla dowolnej organizacji. Dodając to, kredyty zostaną przekazane organizacji wraz z Tobą, gdy problem zostanie rozwiązany.

3. Dodaj opis zmian dokonanych w łatce w sekcji komentarzy.
4. Wybierz plik poprawki, plik interdiff i wgraj go pod plikami.

Akta

Tutaj dodaliśmy pliki jeden po drugim i po wybraniu pliku klikamy upload. Kliknięcie na prześlij plik zostanie przesłany i zostanie dodany do poniższej listy.

UWAGA: Interdiff nie jest wymagany podczas dodawania nowego patcha.

5. Po przesłaniu pliku kliknij przycisk Zapisz. Spowoduje to aktualizację strony problemu i zobaczymy przesłaną łatkę z nowym numerem komentarza.

Poprawki do kluczowych problemów należy przesyłać zgodnie z tą samą procedurą.

Przejrzyj łatkę

Teraz wiesz, jak szukać problemu, stworzyć łatkę i ją przesłać. Co dalej? Jak możemy się upewnić, że właściwa łatka zostanie jak najszybciej zatwierdzona? Przejrzenie poprawki jest równie ważnym krokiem w posuwaniu problemu do przodu. Jeśli uważasz, że pisanie linijek kodu nie jest twoją rzeczą, dlaczego nie spróbować przejrzeć istniejących poprawek?

Zanim zaczniemy, gorąco polecam dodanie rozszerzenia Dreditor do przeglądarki.

Dreditor

Rozszerzenie Dreditora

Zapewnia przycisk „Przegląd” dla plików poprawek/interdiff. Po kliknięciu wyświetla zmiany w czytelnym formacie.

Recenzja

Przycisk „Recenzja” z Dreditora

Łata

Zmiany w plikach poprawek bez Dreditora

Zmiany w plikach poprawek

Teraz wszyscy jesteśmy gotowi znaleźć problem do przejrzenia!

  • Filtruj problemy ze statusem „Wymaga sprawdzenia”.
  • Wybierz z listy.
  • Przeczytaj komentarze i wybierz najnowszą łatkę przesłaną w numerze.
  • Upewnij się, że łatka przeszła testy przypadków i zmieniła kolor na zielony.
Przepustka testowa patch

Łatka, która przeszła testy

  • Pobierz plik łaty i zastosuj łatkę lokalnie do swojego rdzenia/modułu/motywu/profilu, uruchamiając:
 git apply <patch-file-downloaded> -v
  • Sprawdź, czy działa zgodnie z oczekiwaniami / wymaga trochę pracy.
  • Zmień status problemu i dodaj komentarze ze zdjęciami/filmami potwierdzającymi Twoje punkty. Twój komentarz powinien zawierać szczegółowe informacje, takie jak to, czy poprawka została zastosowana do najnowszej wersji, jakie kroki wykonano w celu odtworzenia problemu, zachowanie problemu przed i po zastosowaniu poprawki itp.
  • Jeśli wszystko wygląda dobrze, zmień status na „RTBC”.
  • Jeśli istnieje możliwość wykonania dodatkowej pracy/zmian, zaktualizuj status do „Wymaga pracy”.

Inne sposoby wnoszenia wkładu

Oprócz wkładu w kod, projekt Drupal ma wiele obszarów, w których możesz przyczynić się do poprawy jego jakości i zasięgu. Możesz wybrać metodę wkładu w tę społeczność na podstawie swoich zainteresowań. Niektóre z obszarów składek:

  • Poprzez mentoring - Jeśli masz jakieś doświadczenie w udzielaniu wkładu, możesz pomóc innym zacząć, stając się mentorem, online lub osobiście.
  • Do dokumentacji — Cała dokumentacja projektu Drupal jest swobodnie udostępniana przez ludzi z całego świata, takich jak Ty.
  • Dzielenie się wiedzą - Ważnym sposobem na udział w projekcie Drupal jest dzielenie się wiedzą o Drupalu poprzez pisanie postów na blogu, wygłaszanie prezentacji na lokalnym spotkaniu Drupal Group, DrupalCamp lub DrupalCon, zostawanie trenerem itp.
  • Planowanie wydarzeń - Organizując lub wolontariat w wirtualnych lub osobistych wydarzeniach Drupal, takich jak spotkania, sprinty itp.
  • Według marketingu — możesz współpracować z innymi zespołami marketingowymi na całym świecie, aby tworzyć materiały marketingowe i sprzedażowe pod marką Drupal, które mogą być udostępniane i używane przez wszystkich sprzedających usługi Drupal.
  • Współpracując z modułami/motywami — współpraca przy projektach Drupala, w tym modułach, dystrybucjach i motywach, jest integralnym sposobem wnoszenia wkładu do społeczności Drupala.

Pozostań w kontakcie i na bieżąco!

• Luźny

  • Społeczność Drupala ma podstawową przestrzeń roboczą Slacka, znaną po prostu jako „Drupal” - - http://drupal.slack.com/
  • Znajdziesz wiele kanałów dla różnych tematów, takich jak #support, #bugsmash, #contribute, #drupal10rediness itp.

• Blogi

  • Członkowie społeczności Drupala piszą wpisy na blogu o Drupalu.
  • Nawet TY możesz być jednym z nich!

• Media społecznościowe – Twitter, LinkedIn itp.

  • Śledzenie profili związanych z Drupalem może być na bieżąco informowane o wszystkich bieżących zmianach/wydarzeniach zachodzących wokół Drupala.

Kodeks postępowania dla Drupala

Ponieważ Drupal jest oprogramowaniem typu open source, a nasza społeczność rośnie, konieczne jest zachowanie tego, co nas tu przywiodło. Oto kilka punktów dotyczących postępowania.

  • Współpracuj

Ponieważ Drupal ma większą społeczność, kluczem jest współpraca. Pracując zespołowo, możemy sprowadzić na platformę drupal to, co najlepsze.

  • Szanuj

Ponieważ każdy wnosi cenny wkład do Drupala, społeczność i jej członkowie traktują się nawzajem z szacunkiem.

  • Kiedy nie mamy pewności, poproś o pomoc

Nikt nie jest doskonały w Drupalu i nikt nie powinien wiedzieć wszystkiego w społeczności Drupala. Zadawanie pytań może rozwiązać wiele problemów, dlatego zachęcamy do zadawania pytań.

  • Jeśli jesteś ofiarą lub świadkiem nękania lub potrzebujesz pomocy w administrowaniu Slack, skontaktuj się ze swoimi rówieśnikami/administratorami Slack.

https://www.drupal.org/dcoc to link do dokumentu, w którym można znaleźć szczegółowy kodeks postępowania.

Końcowe przemyślenia

Jako organizacja, która żyje i oddycha Drupalem, zawsze jesteśmy oddani projektowi w każdy możliwy sposób. Jeśli szukasz zaufanej agencji Drupal do swojego kolejnego projektu, nasi eksperci chętnie Ci pomogą. Porozmawiaj z nami już dziś!