Installér en pakke
Installation af pakker fra GitHub Packages giver dig mulighed for at forbruge biblioteker, afhængigheder og containerbilleder, der hostes på GitHub. Du kan installere en hvilken som helst pakke, du har tilladelse til at få vist, og bruge den som en afhængighed i projektet.
Opdagelse af pakker
GitHub-pakker giver flere måder at finde pakker på:
Søgemuligheder
- Global søgning: Søg på tværs af alle offentlige pakker på GitHub
- Søgning efter organisation: Find pakker inden for en bestemt organisation
- Søgning i lager: Gennemse pakker, der er udgivet fra et lager
- Filter til pakketype: Filtrer efter npm, NuGet, Maven, Docker osv.
Du kan finde flere oplysninger under Søge efter pakker.
Information om pakken
Når du finder en pakke, indeholder pakkesiden vigtige oplysninger:
- Beskrivelse: Hvad pakken gør og dens formål
- Installationsvejledning: Sådan tilføjer du pakken til dit projekt
- Versionshistorik: Tilgængelige versioner og produktbemærkninger
- Afhængigheder: Påkrævede pakker og versionsbegrænsninger
- Eksempler på brug: Kodeeksempler, der viser almindelige scenarier
- Licens: Juridiske vilkår for brug af pakken
- Download statistik: Hvor mange gange pakken er blevet installeret
Bedste praksis: Læs altid pakkens installations- og beskrivelsesinstruktioner før installation for at forstå krav, ændringer og kompatibilitet.
Arbejdsgang for installation
Installation af en pakke følger en ensartet totrinsproces uanset pakketype:
1. Godkend til GitHub-pakker
Konfigurer din pakkeklient til at godkende med GitHub-pakker ved hjælp af et personligt adgangstoken (PAT) med omfanget read:packages .
Krav til godkendelse:
- Offentlige pakker: Godkendelse er påkrævet selv for offentlige pakker
- Private pakker: Kræver PAT med passende lageradgang
- Organisationspakker: Kan kræve medlemskab af en organisation
- Interne pakker: Kun tilgængelig i GitHub Enterprise-organisationer
2. Installer pakken
Brug pakkeklientens oprindelige installationskommandoer (npm install, dotnet add package, mvn install osv.) til at føje pakken til dit projekt.
Tjekliste for installation:
- Kontroller, at pakkenavn og -version er korrekte
- Kontrollér kompatibilitet med projektets rammeversion
- Gennemse afhængighedstræet for konflikter
- Testpakkens funktionalitet efter installation
- Opdater dokumentationen for at afspejle den nye afhængighed
Installation af NuGet-pakker
NuGet-pakker kan installeres ved hjælp af Visual Studio eller dotnet CLI.
Metode 1: Visual Studio
Visual Studio indeholder en grafisk grænseflade til administration af NuGet-pakker:
Åbn NuGet Package Manager:
- Udvid løsning → projekt
- Højreklik på Afhængigheder
- Vælg Administrer NuGet-pakker...
Gennemse og installer:
- Klik på fanen Gennemse
- Søg efter dit pakkenavn
- Vælg den ønskede version
- Klik på Installer
Du kan gennemse, installere og opdatere afhængigheder fra flere registre samtidigt. Du kan få flere oplysninger i Opret og fjern projektafhængigheder.
Metode 2: Redigering af .csproj direkte
Du kan tilføje pakkereferencer direkte til din projektfil:
Trin 1: Godkend til GitHub-pakker
Opret eller opdater din nuget.config fil (se afsnittet Udgivelse for at få oplysninger om godkendelse).
Trin 2: Tilføj PackageReference
Tilføj en ItemGroup med en PackageReference i din .csproj-fil :
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<PackageId>OctocatApp</PackageId>
<Version>1.0.0</Version>
<Authors>Octocat</Authors>
<Company>GitHub</Company>
<PackageDescription>This package adds an Octocat!</PackageDescription>
<RepositoryUrl>https://github.com/OWNER/REPOSITORY</RepositoryUrl>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="OctokittenApp" Version="12.0.2" />
</ItemGroup>
</Project>
Seddel
Erstat OctokittenApp med dit pakkenavn og 12.0.2 med den version, du vil bruge.
Trin 3: Gendan pakker
Installer pakkerne ved hjælp af gendannelseskommandoen :
dotnet restore
Metode 3: Brug af dotnet CLI
Du kan installere pakker ved hjælp af dotnet add-kommandoen :
dotnet add package OctokittenApp --version 12.0.2 --source github
Bedste fremgangsmåder for NuGet-installation:
- Pin-versioner: Angiv nøjagtige versioner for reproducerbare builds
- Brug central pakkestyring: Konsolider versioner i Directory.Packages.props
- Gennemse sårbarheder: Kontrollér, om der er sikkerhedsmeddelelser, før du installerer
- Test kompatibilitet: Sørg for, at pakken fungerer med din målramme
Installation af npm-pakker
npm-pakker kræver konfiguration af en .npmrc-fil for at angive GitHub-pakker som registreringsdatabasen.
Konfigurere .npmrc-fil
Trin 1: Godkend til GitHub-pakker
Opret eller opdater din ~/.npmrc-fil med dit godkendelsestoken (se afsnittet Udgivelse for at få oplysninger om godkendelse).
Trin 2: Opret projekt .npmrc
I samme mappe som din package.json fil skal du oprette eller redigere en .npmrc-fil :
@OWNER:registry=https://npm.pkg.github.com
Seddel
Erstat EJER med navnet på den bruger- eller organisationskonto, der ejer pakken.
Trin 3: Commit .npmrc til repository
Føj .npmrc-filen til dit lager, så alle teammedlemmer bruger den samme konfiguration. Se Tilføjelse af en fil til et lager.
Føj afhængighed til package.json
Konfigurer package.json til at medtage pakken som en afhængighed:
{
"name": "@my-org/server",
"version": "1.0.0",
"description": "Server app that uses the @octo-org/octo-app package",
"main": "index.js",
"author": "",
"license": "MIT",
"dependencies": {
"@octo-org/octo-app": "1.0.0"
}
}
Specifikation af afhængighed:
-
Præcis version:
"1.0.0"installerer en bestemt version -
Cirkum-serien:
"^1.0.0"Installerer kompatible mindre/patch-opdateringer -
Tilde rækkevidde:
"~1.0.0"Installerer kun kompatible patch-opdateringer -
Senest:
"latest"installerer den nyeste version (anbefales ikke til produktion)
Installere pakken
Kør kommandoen npm install :
npm install
Eller installer en bestemt pakke:
npm install @octo-org/octo-app
Flere organisationer
Hvis du har brug for at installere pakker fra flere organisationer, skal du føje flere linjer til . npmrc-filen :
@first-org:registry=https://npm.pkg.github.com
@second-org:registry=https://npm.pkg.github.com
@third-org:registry=https://npm.pkg.github.com
Bedste fremgangsmåder for installation af npm:
- Brug package-lock.json: Bekræft låsefil til ensartede installationer på tværs af miljøer
-
Revisionsafhængigheder: Kør
npm auditfor at kontrollere for sårbarheder -
Brug npm ci: I CI/CD-pipelines kan du bruge
npm ciden til hurtigere og mere pålidelige installationer - Begrænsninger for versioner: Brug semantiske versionsintervaller til at afbalancere stabilitet og opdateringer
- Privat register først: Konfigurer områder for at kontrollere GitHub-pakker før offentlig npm
Installation i CI/CD-pipelines
Du kan installere pakker i GitHub Actions-arbejdsprocesser ved hjælp af de samme metoder:
npm i GitHub-handlinger
- uses: actions/setup-node@v4
with:
node-version: "18"
registry-url: "https://npm.pkg.github.com"
scope: "@OWNER"
- run: npm ci
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NuGet i GitHub-handlinger
- uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
source-url: https://nuget.pkg.github.com/OWNER/index.json
env:
NUGET_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- run: dotnet restore
Fordele ved GITHUB_TOKEN:
- Ingen PAT påkrævet: Automatisk tilgængelig i arbejdsgange
- Tilladelser med omfang: Begrænset til arbejdsprocessens lageradgang
- Automatisk rotation: Token regenereres for hver arbejdsproceskørsel
- Sikker: Aldrig blotlagt i træstammer eller artefakter
Fejlfinding af installationsproblemer
Almindelige problemer og løsninger:
| Problem | Årsag | Opløsning |
|---|---|---|
| 401 Uautoriseret | Manglende eller ugyldig PAT | Kontrollér, at token har read:packages omfang |
| 404 Ikke fundet | Pakkenavn eller URL-adresse til registreringsdatabasen er forkert | Tjek pakken eksisterer, og ejeren er korrekt |
| 403 Forbudt | Ingen tilladelse til at få adgang til pakken | Anmod om adgang eller bekræft organisationsmedlemskab |
| Version ikke fundet | Den ønskede version findes ikke | Tjek tilgængelige versioner på pakkesiden |
| Afhængighedskonflikter | Inkompatible pakkeversioner | Opdater andre afhængigheder eller brug løsninger |
Yderligere ressourcer
Du kan få flere oplysninger under:
- Arbejde med et GitHub Packages-register - Komplet guide til alle understøttede registre.
- Arbejde med NuGet-registreringsdatabasen – Detaljeret NuGet-installationsvejledning.
- Arbejde med npm-registreringsdatabasen – Detaljeret installationsvejledning til npm.
- Om tilladelser til GitHub-pakker – Om adgangskontrol til pakker.