Introdução aos GitHub Packages

GitHub Package Registry é um serviço de hospedagem de pacotes de software que permite que você hospede seus pacotes de software de forma privadaou publicamente e use pacotes como dependências dos seus projetos.

GitHub Package Registry is available with GitHub Free, GitHub Pro, GitHub Free for organizations, GitHub Team, GitHub Enterprise Cloud, GitHub Enterprise Server, and GitHub AE.


O GitHub Package Registry não está disponível para repositórios privados de contas que utilizam planos antigos por-repositório. Also, accounts using legacy per-repository plans cannot access the Container registry since these accounts are billed by repository. Para obter mais informações, consulte "[produtos de GitHub](/articles/github-s-products)

Sobre o GitHub Package Registry

GitHub Package Registry is a package hosting service, fully integrated with GitHub. GitHub Package Registry combina seu código-fonte e pacotes em um só lugar para fornecer o gerenciamento integrado de permissões e cobrança, para centralizar o desenvolvimento do software em GitHub.

Você pode integrar GitHub Package Registry com as APIs de GitHub, GitHub Actions e webhooks para criar um fluxo de trabalho de ponta a ponta que inclui as suas soluções de código, CI e implantação.

GitHub Package Registry oferece registros de pacotes diferentes para gerentes de pacotes comumente usados, como npm, RubyGems, Apache Maven, Gradle, Docker e NuGet. O Container registry é otimizado para contêineres e é compatível com imagens do Docker e OCI. Para mais informações sobre os registros de pacote diferentes com que GitHub Package Registry é compatível, consulte "Trabalhar com um registro de GitHub Package Registry".

Diagrama que mostra a compatibilidade dos pacotes com o Docker, registro de contêiner, RubyGems, npm, Apache Maven, NuGet e Gradle

Você pode visualizar o LEIAME de um pacote, bem como os metadados como licenciamento, estatísticas de download, histórico de versão e muito mais em GitHub. Para obter mais informações, consulte "Visualizar pacotes".

Visão geral das permissões e visibilidade do pacote

Permissões
As permissões para um pacote são herdadas do repositório em que o pacote está hospedado ou, para pacotes em Container registry, eles podem ser definidos para contas específicas de usuário ou organização. Para obter mais informações, consulte "Configurar o controle de acesso e visibilidade de um pacote".
VisibilidadeYou can publish packages in a public repository (public packages) to share with all of GitHub, or in a private repository (private packages) to share with collaborators or an organization.

Para obter mais informações, consulte "Sobre permissões para GitHub Package Registry".

Sobre a cobrança do GitHub Package Registry

O uso de GitHub Package Registry é gratuito para pacotes públicos. Para pacotes privados, cada conta GitHub recebe uma certa quantidade de armazenamento gratuito e transferência de dados, dependendo do produto usado com a conta. Qualquer uso para além dos montantes incluídos é controlado por limites de despesa. Se você for um cliente que paga mensalmente, a sua conta terá um limite de gastos padrão de $ 0, que impede o uso adicional de armazenamento ou transferência de dados após atingir o valor incluído. Se você pagar a sua conta por fatura, sua conta terá um limite de gastos padrão ilimitado. Para obter mais informações, consulte "Sobre a cobrança do GitHub Package Registry".

Clientes e formatos compatíveis

O GitHub Package Registry usa os comandos nativos de ferramentas de pacotes com os quais você já está familiarizado para publicar e instalar versões de pacote.

Suporte para registros de pacotes

LinguagemDescriçãoFormato do pacoteCliente do pacote
JavaScriptGerenciador de pacotes de nópackage.jsonnpm
RubyGerenciador de pacotes de RubyGemsGemfilegem
JavaFerramenta de gerenciamento de projetos e compreensão do Apache Mavenpom.xmlmvn
JavaFerramenta de automação do build Gradle para Javabuild.gradle ou build.gradle.ktsgradle
.NETGerenciamento de pacotes NuGet para .NETnupkgdotnet CLI
N/AGerenciamento do contêiner do Dockerarquivo DockerDocker

Para obter mais informações sobre a configuração do seu pacote para uso com GitHub Package Registry, consulte "Trabalhar com um registro de GitHub Package Registry".

Para mais informações sobre o Docker e o Container registry, consulte "Trabalhar com o Registro do Contêiner" e "Trabalhar com o registro Docker".

Autenticar-se no GitHub Package Registry

Você precisa de um token de acesso para publicar, instalar e excluir pacotes no GitHub Package Registry.

You can use a personal access token (PAT) to authenticate to GitHub Package Registry or the GitHub API. Ao criar um token de acesso pessoal, você pode atribuir diferentes escopos de token, dependendo da sua necessidade. For more information about packages-related scopes for a PAT, see "About permissions for GitHub Packages."

To authenticate to a GitHub Package Registry registry within a GitHub Actions workflow, you can use:

  • GITHUB_TOKEN to publish packages associated with the workflow repository.
  • a PAT to install packages associated with other private repositories (which GITHUB_TOKEN can't access).

For more information about GITHUB_TOKEN used in GitHub Actions workflows, see "Authentication in a workflow."

Gerenciar pacotes

Você pode excluir um pacote na interface de usuário GitHub ou usando a API REST. Para obter mais informações, consulte o "API de GitHub Package Registry".

Ao usar a API do GraphQL para consultar e excluir pacotes privados, você deve usar o mesmo token que você usa para efetuar a autenticação no GitHub Package Registry. Para obter mais informações, consulte "Excluindo e restaurando um pacote" e"Realizando chamadas com o GraphQL".

Você pode configurar webhooks para assinar eventos relacionados aos pacotes, como quando um pacote é publicado ou atualizado. Para obter mais informações, consulte o evento de webhook de "pacote".

Entrar em contato com o suporte

Se você tiver comentários ou solicitações de recursos para GitHub Package Registry, use o formulário de feedback para GitHub Package Registry.

Entre em contato com Suporte do GitHub sobre GitHub Package Registry usando o nosso formulário de contato se:

  • Você encontrar qualquer coisa que contradiga a documentação
  • Você encontra erros vagos ou pouco claros
  • Seu pacote publicado contém dados confidenciais, como violações do RGPD, chaves API ou informações de identificação pessoal

Esse documento ajudou você?Política de Privacidade

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.