Co to są pakiety GitHub?
Pakiety GitHub to usługa zarządzania pakietami, która ułatwia publikowanie publicznych lub prywatnych pakietów obok kodu źródłowego.
Uwaga
Jeśli nie znasz jeszcze usługi GitHub, zapoznaj się z modułem Introduction to GitHub Learn (Wprowadzenie do usługi GitHub Learn).
Pakiety GitHub to rejestr pakietów
Pakiety GitHub umożliwiają udostępnianie zależności projektu w organizacji lub publicznie.
Podczas pracy nad projektem, który ma zależności pakietów, ważne jest, aby ufać im, zrozumieć ich kod i połączyć się ze społecznością, która je utworzyła. W organizacjach musisz również mieć możliwość szybkiego znalezienia zatwierdzonych elementów do użycia.
Pakiety GitHub używają tego samego znanego interfejsu usługi GitHub do znajdowania pakietów publicznych w dowolnym miejscu w usłudze GitHub lub prywatnych pakietach w organizacji lub repozytoriach.
Standardowy menedżer pakietów
Pakiety GitHub są zgodne z typowymi klientami zarządzania pakietami, dzięki czemu można publikować pakiety z wybranymi narzędziami. Jeśli repozytorium jest bardziej złożone, może być konieczne opublikowanie wielu pakietów różnych typów. Możesz również użyć elementów webhook lub funkcji GitHub Actions, aby w pełni dostosować przepływy pracy publikowania i publikowania końcowego.
Czy publikujesz pakiet open source? Wiele projektów typu open source przechowuje swój kod w usłudze GitHub, dzięki czemu można publikować wersje wstępne pakietów do testowania w społeczności, a następnie łatwo podwyższyć poziom określonych wersji do wybranego publicznego rejestru.
W momencie pisania tego tekstu pakiety GitHub są zgodne z następującymi menedżerami pakietów:
- npm, menedżer pakietów NodeJS
- NuGet, menedżer pakietów platformy .NET
- RubyGems, menedżer pakietów języka Ruby
- Maven i Gradle, dwa menedżery pakietów dla języka Java
Pakiety GitHub to również rejestr kontenerów
Od kompletnych aplikacji do narzędzi interfejsu wiersza polecenia, kontenery stanowią kolejną formę dystrybucji kodu. Pakiety GitHub umożliwiają publikowanie i dystrybucję obrazów kontenerów. Po opublikowaniu (publicznie lub prywatnie) możesz używać tych obrazów z dowolnego miejsca, w tym:
- W lokalnym środowisku projektowym
- Jako obraz podstawowy ze środowiska programistycznego GitHub Codespaces
- Krok do wykonania w przepływie pracy ciągłej integracji /ciągłego wdrażania (CD) za pomocą funkcji GitHub Actions
- Na serwerze lub w usłudze w chmurze
Porównanie pakietów GitHub z wydaniami usługi GitHub
Pakiety GitHub służą do publikowania wydań bibliotek w standardowym kanale informacyjnym pakietów lub rejestrze kontenerów. Są one przeznaczone do wykorzystania sposobów działania określonego klienta zarządzania pakietami z tym kanałem informacyjnym, takich jak łączenie z repozytorium, w którym pakiet został utworzony, a także wersja używanego kodu.
Wersje usługi GitHub są używane do wydawania pakietu spakowanego oprogramowania wraz z informacjami o wersji i linkami do plików binarnych. Możesz pobrać te wersje bezpośrednio z ich unikatowego adresu URL i śledzić je z powrotem do określonego zatwierdzenia, z którego zostały utworzone. Wersje można pobierać tylko jako pliki tarballs lub ZIP.
Ujednolicona tożsamość i uprawnienia
Załóżmy, że pracujesz nad projektem przy użyciu usługi GitHub na potrzeby hostowania kodu źródłowego: JavaScript dla frontonu z narzędziami npm i Java na potrzeby zaplecza. Teraz utrzymujesz co najmniej trzy różne zestawy poświadczeń i uprawnień użytkownika: dla repozytoriów Git, npm i Maven.
Za pomocą pakietów GitHub można użyć jednego zestawu poświadczeń w repozytorium kodu źródłowego, prywatnego rejestru npm i prywatnego rejestru Maven lub Gradle. Pakiety publikowane za pośrednictwem usługi GitHub dziedziczą widoczność i uprawnienia przypisane na poziomie repozytorium. Nowy członek zespołu potrzebuje dostępu do odczytu pakietu i jego kodu? Przyznaj im dostęp do odczytu do repozytorium i gotowe!
Kompilowanie i publikowanie pakietów z poziomu usługi GitHub
Funkcja GitHub Actions to kolejna funkcja usługi GitHub, która umożliwia automatyzowanie przepływów pracy oprogramowania. Możesz kompilować, testować i wdrażać kod bezpośrednio z poziomu usługi GitHub.
Napiwek
Jeśli chcesz dowiedzieć się więcej na temat funkcji GitHub Actions, zapoznaj się z modułem Learn Tworzenie przepływów pracy ciągłej integracji przy użyciu funkcji GitHub Actions .
Dzięki połączeniu narzędzia GitHub Actions i pakietów GitHub możesz utworzyć przepływ pracy, który będzie kompilować i testować kod, a następnie publikować go w pakietach GitHub, po prostu wypychając kod do repozytorium.
W następnej lekcji dowiesz się, jak używać naszego przepływu pracy do publikowania w pakietach GitHub i usłudze GitHub Container Registry.