Wprowadzenie do usługi GitHub
GitHub to największa społeczność open source na świecie. Firma Microsoft jest właścicielem usługi GitHub. GitHub to platforma programowa inspirowana sposobem pracy.
Możesz udostępniać i przeglądać kod, zarządzać projektami i tworzyć oprogramowanie wraz z 40 milionami deweloperów, od projektów open source po komercyjne.
GitHub to usługa hostingu repozytorium Git, która dodaje wiele jego funkcji.
Usługa Git jest narzędziem wiersza polecenia, ale usługa GitHub udostępnia internetowy interfejs graficzny.
Zapewnia również kontrolę dostępu i kilka funkcji współpracy, takich jak wiki i podstawowe narzędzia do zarządzania zadaniami dla każdego projektu.
Jakie są więc główne zalety korzystania z usługi GitHub? Prawie każdy projekt open source używa usługi GitHub do zarządzania swoim projektem.
Korzystanie z usługi GitHub jest bezpłatne, jeśli projekt jest open source i zawiera witrynę typu wiki i śledzenie problemów, co ułatwia uzyskanie bardziej szczegółowej dokumentacji i uzyskanie opinii na temat projektu.
Jakie są niektóre funkcje oferowane przez usługę GitHub?
Automatyzacja od kodu do chmury: Przyspiesz cykl kodu produkcyjnego i uprość przepływ pracy za pomocą pakietów GitHub i wbudowanego CI/CD przy użyciu funkcji GitHub Actions.
- Zautomatyzuj swoje przepływy pracy: Kompiluj, testuj, wdrażaj i uruchamiaj ciągłą integrację/ciągłe wdrażanie (CI/CD) w tym samym miejscu, w którym zarządzasz kodem. Wyzwalaj akcje z dowolnego zdarzenia usługi GitHub do dowolnego dostępnego interfejsu API. Utwórz akcje w wybranym języku lub wybierz spośród tysięcy przepływów pracy i akcji utworzonych przez społeczność.
- Pakiety lokalnie z ich kodem: użyj GitHub Actions do automatycznego publikowania nowych wersji pakietów w GitHub Packages. Zainstaluj pakiety i obrazy hostowane w GitHub Packages lub preferowanym rejestrze pakietów w swoich przepływach pracy CI/CD. Jest zawsze bezpłatne dla oprogramowania open source, a transfer danych w ramach działań jest nieograniczony dla wszystkich.
Zabezpieczanie oprogramowania razem: usługa GitHub odgrywa rolę w zabezpieczaniu kodu na świecie — deweloperów, opiekunów, badaczy i zespołów ds. zabezpieczeń. W usłudze GitHub, zespoły programistyczne na całym świecie mogą pracować razem nad zabezpieczeniem łańcucha dostaw oprogramowania, od rozgałęzienia do zakończenia.
- Otrzymuj alerty dotyczące luk w zabezpieczeniach w kodzie: usługa GitHub stale skanuje biuletyny zabezpieczeń pod kątem popularnych języków. Ponadto wysyła alerty zabezpieczeń do osób obsługujących repozytoria, których dotyczy problem, ze szczegółami, dzięki czemu mogą korygować zagrożenia.
- Automatyczne aktualizowanie luk w zabezpieczeniach: usługa GitHub monitoruje zależności projektu i automatycznie otwiera żądania ściągnięcia w celu zaktualizowania zależności do minimalnej wersji, która rozwiązuje znane luki w zabezpieczeniach.
- Bądź na bieżąco z CVEs: Śledź najnowsze typowe luki w zabezpieczeniach i podatności (CVE), i dowiedz się, jak wpływają na Ciebie, korzystając z bazy danych poradniczej GitHub.
- Znajdź luki w zabezpieczeniach, których brakuje innym narzędziom: CodeQL to wiodący w branży aparat analizy kodu semantycznego. Rewolucyjne podejście usługi GitHub traktuje kod jako dane w celu szybszego identyfikowania luk w zabezpieczeniach.
- Wyeliminuj warianty: Nigdy nie popełnij tego samego błędu dwa razy. Proaktywne skanowanie luk w zabezpieczeniach zapobiega przedostawaniu się luk w zabezpieczeniach do środowiska produkcyjnego.
- Zachowaj bezpieczeństwo tokenów: przypadkowo zatwierdzić token w repozytorium publicznym? GitHub ma cię pod swoją opieką. Z pomocą 20 dostawców usług, GitHub podejmuje kroki w celu zapewnienia bezpieczeństwa.
Bezproblemowy przegląd kodu: Przegląd kodu to najpewniejsza ścieżka do lepszego kodu i jest fundamentalna dla sposobu działania usługi GitHub. Wbudowane narzędzia do przeglądu umożliwiają przegląd kodu jako istotną część procesu twojego zespołu.
- Zaproponuj zmiany: Lepszy kod rozpoczyna się od żądania ściągnięcia, dynamicznej rozmowy na temat zmian, w której można wymieniać się pomysłami, przypisywać zadania, omawiać szczegóły i przeprowadzać przeglądy.
- Zgłaszanie próśb o recenzje: Jeśli jesteś w roli recenzowanego, możesz poprosić o opinię od swoich współpracowników, aby uzyskać szczegółowy feedback, którego potrzebujesz.
- Zobacz różnicę: Recenzje są przeprowadzane szybciej, gdy dokładnie wiesz, jakie zmiany zaszły. Różnice porównują wersje kodu źródłowego, wyróżniając nowe, zmodyfikowane lub usunięte części.
- Komentarz w kontekście: Dyskusje odbywają się w wątkach komentarzy w kodzie — dołączaj komentarze do jednej recenzji lub odpowiadaj innej osobie, która jest w kolejce, aby rozpocząć konwersację.
- Przekaż jasne opinie: Twoi koledzy z drużyny nie powinni myśleć zbyt ciężko o tym, co oznacza emoji kciuka. Określ, czy Twoje komentarze są wymaganymi zmianami, czy tylko sugestiami.
- Chroń gałęzie: jedynie najwyższej jakości kod powinien być scalany. Repozytoria można skonfigurować tak, aby wymagały kontroli stanu, zmniejszając liczbę błędów ludzkich i nakład pracy administracyjnej.
Cały kod i dokumentacja w jednym miejscu: setki milionów repozytoriów prywatnych, publicznych i open source są hostowane w usłudze GitHub. Każde repozytorium ma narzędzia do hostowania, wersjonowania i wydawania kodu oraz dokumentacji.
- Kod, w którym współpracujesz: repozytoria przechowują kod w jednym miejscu i pomagają zespołom współpracować z narzędziami, które kochają, nawet jeśli pracujesz z dużymi plikami przy użyciu usługi Git LFS. Można tworzyć lub importować jak najwięcej projektów z nieograniczonymi repozytoriami prywatnymi dla użytkowników indywidualnych i grup.
- Dokumentacja wraz z kodem: hostowanie dokumentacji bezpośrednio z repozytoriów za pomocą usługi GitHub Pages. Użyj narzędzia Jekyll jako generatora witryn statycznych i opublikuj strony z folderu /docs w gałęzi głównej.
Zarządzaj swoimi pomysłami: Koordynuj wcześnie, utrzymuj zgodność i zrealizuj więcej dzięki narzędziom do zarządzania projektami GitHub.
- Zobacz całokształt swojego projektu: Zobacz wszystko, co dzieje się w twoim projekcie, i wybierz, gdzie skupić wysiłki zespołu dzięki projektom i tablicom zadań, które są tam, gdzie powinny być: blisko twojego kodu.
- Śledzenie i przypisywanie zadań: Problemy ułatwiają identyfikowanie, przypisywanie i śledzenie zadań w zespole. Możesz otworzyć zgłoszenie, aby śledzić usterkę, omawiać pomysł z @mentionlub rozpocząć rozdzielanie pracy.
Ludzka strona oprogramowania: Tworzenie oprogramowania polega bardziej na zarządzaniu zespołami i społecznościami niż kodowaniem. Niezależnie od tego, czy jest to grupa dwóch, czy 2000, GitHub ma wsparcie, którego potrzebują Twoi ludzie.
- Zarządzanie zespołami i rozwijanie ich: Pomaganie osobom organizującym się za pomocą zespołów Usługi GitHub, zwiększanie poziomu dostępu do ról administracyjnych i dostosowywanie uprawnień zagnieżdżonych zespołów.
- Zachowaj konwersacje: narzędzia moderowania, takie jak blokowanie zgłoszeń i próśb o pobranie, pomagają zespołowi pozostać skupionym na kodzie. A jeśli utrzymujesz projekt open source, blokowanie użytkowników zmniejsza szum i zapewnia produktywne konwersacje.
- Ustaw wytyczne społeczności: ustawianie ról i oczekiwań bez rozpoczynania od podstaw. Dostosuj standardowe kodeksy postępowania, aby utworzyć idealny dla projektu. Następnie wybierz gotową licencję bezpośrednio z własnego repozytorium.
Usługa GitHub oferuje doskonałe zasoby szkoleniowe dla swojej platformy. Możesz znaleźć wszystko, od szkoleń wprowadzających do usługi Git, po szczegółowe omówienie publikowania statycznych stron w usłudze GitHub i sposobu wykonywania metodyki DevOps w usłudze GitHub tutaj.