O que é GitHub Packages?

Concluído

Os Pacotes GitHub são um serviço de gerenciamento de pacotes que facilita a publicação de pacotes públicos ou privados ao lado do código-fonte.

Observação

Se você ainda não está familiarizado com o GitHub, confira o módulo Introdução ao GitHub Aprender.

GitHub Packages é um registro de pacote

Os pacotes do GitHub permitem que você compartilhe suas dependências de projeto dentro de sua organização ou publicamente.

Quando você trabalha em um projeto que tem dependências de pacote, é importante confiar neles, entender seu código e se conectar com a comunidade que os criou. Dentro das organizações, você também precisa ser capaz de encontrar rapidamente o que foi aprovado para seu uso.

Os pacotes do GitHub usam a mesma interface familiar do GitHub para encontrar pacotes públicos em qualquer lugar no GitHub, ou pacotes privados dentro de sua organização ou repositórios.

Um gerenciador de pacotes padrão

O GitHub Packages é compatível com clientes comuns de gerenciamento de pacotes, para que você possa publicar pacotes com suas ferramentas escolhidas. Se o repositório for mais complexo, talvez seja necessário publicar vários pacotes de tipos diferentes. Você também pode usar webhooks ou Ações do GitHub para personalizar totalmente seus fluxos de trabalho de publicação e pós-publicação.

Você está publicando um pacote de código aberto? Muitos projetos de código aberto armazenam seu código no GitHub, para que você possa publicar versões de pré-lançamento de seus pacotes para teste em sua comunidade e, em seguida, promover facilmente versões específicas para o registro público de sua escolha.

página do pacote do GitHub n p m, com descrição e instruções sobre como instalá-lo.

No momento da escrita, os pacotes GitHub são compatíveis com os seguintes gerenciadores de pacotes:

  • npm, um gerenciador de pacotes NodeJS
  • NuGet, o gerenciador de pacotes .NET
  • RubyGems, um gerenciador de pacotes Ruby
  • Maven e Gradle, dois gerenciadores de pacotes para Java

GitHub Packages também é um registro de contêiner

De aplicativos completos a utilitários CLI, os contêineres são outra forma de distribuição de código. Os pacotes do GitHub permitem publicar e distribuir imagens de contêiner. Uma vez publicadas (em público ou em privado), pode utilizar estas imagens a partir de qualquer lugar, incluindo:

  • No seu ambiente de desenvolvimento local
  • Como imagem base do seu ambiente de desenvolvimento GitHub Codespaces
  • Como uma etapa para executar no seu fluxo de trabalho de Integração Contínua (CI) / Desdobramento Contínuo (CD) com GitHub Actions
  • Num servidor ou num serviço na nuvem

página de imagem de contentor do GitHub, com listagem de versões da imagem, estatísticas e instruções sobre como instalá-lo.

Compare os pacotes do GitHub com as versões do GitHub

Os pacotes do GitHub são usados para publicar versões de suas bibliotecas em um feed de pacote padrão ou em um registro de contêiner. Eles se destinam a aproveitar as maneiras como o cliente de gerenciamento de pacotes específico trabalha com esse feed, como vincular de volta ao repositório no qual o pacote foi criado, bem como à versão do código que foi usada.

Versões do GitHub são utilizadas para lançar um pacote de software, juntamente com notas de lançamento e links para arquivos binários. Você pode baixar essas versões diretamente da sua URL exclusiva e rastrear a origem delas até ao commit específico do qual foram criadas. Só pode descarregar versões em tarballs (ficheiros TAR) ou ficheiros ZIP.

Identidade e permissões unificadas

Digamos que você esteja trabalhando em um projeto usando o GitHub para hospedar o código-fonte: JavaScript para o front-end, com npm e Java para o back-end. Agora você mantém pelo menos três conjuntos diferentes de credenciais e permissões de usuário: para repositórios Git, npm e Maven.

Com os Pacotes GitHub, você pode usar um único conjunto de credenciais em seu repositório de código-fonte, seu registro npm privado e seu registro privado Maven ou Gradle. Os pacotes publicados através do GitHub herdam a visibilidade e as permissões atribuídas no nível do repositório. Um novo membro da equipa precisa de acesso de leitura a um pacote e ao seu código? Dê-lhes acesso de leitura ao repositório e está feito!

Crie e publique pacotes a partir do GitHub

GitHub Actions é outro recurso do GitHub que permite automatizar os fluxos de trabalho de software. Você pode criar, testar e implantar seu código diretamente do GitHub.

Dica

Se você quiser saber mais sobre as Ações do GitHub, confira o módulo Criar fluxos de trabalho de integração contínua (CI) usando o GitHub Actions Learn.

Ao combinar Ações do GitHub e Pacotes do GitHub, você pode criar um fluxo de trabalho que criará e testará seu código e, em seguida, publicá-lo nos Pacotes do GitHub simplesmente enviando código para o repositório.

Na próxima unidade, aprenderemos como usar nosso fluxo de trabalho para publicar em Pacotes do GitHub e no Registro de Contêiner do GitHub.