Visão geral dos arquivos de código-fonte
Você pode baixar um instantâneo de qualquer branch, marca ou confirmação específica de sua instância do GitHub Enterprise Server. Esses instantâneos são gerados pelo comando git archive
em um dos dois formatos: tarball ou zipball. Os instantâneos não contêm todo o histórico do repositório. Para usar todo o histórico, clone-o. Para obter mais informações, confira "Clonar um repositório".
Como baixar arquivos de código-fonte
Você pode baixar os arquivos do código-fonte de três maneiras.
Baixando arquivos de código-fonte da exibição do repositório
-
No sua instância do GitHub Enterprise Server, navegue até a página principal do repositório.
-
Acima da lista de arquivos, clique em Código.
-
Clique em Baixar ZIP.
Baixando arquivos de código-fonte de uma versão
-
No sua instância do GitHub Enterprise Server, navegue até a página principal do repositório.
-
À direita da lista de arquivos, clique em Versões.
-
Role a tela até a seção "Ativos" na página da versão.
-
Para baixar o código-fonte, clique em Código-fonte (zip) ou Código-fonte (tar.gz) .
Baixando arquivos de código-fonte de uma marca
-
No sua instância do GitHub Enterprise Server, navegue até a página principal do repositório.
-
À direita da lista de arquivos, clique em Versões.
-
Na parte superior da página Versões, clique em Tags.
-
Para baixar o código-fonte, clique em zip ou tar.gz.
URLs de arquivos do código-fonte
Os arquivos de código-fonte estão disponíveis em URLs específicas para cada repositório. Por exemplo, considere o repositório github/codeql
. Há URLs diferentes para baixar um branch, uma marca ou uma ID de confirmação específica.
Tipos de arquivos | Exemplo | URL |
---|---|---|
Branch | main | https://github.com/github/codeql/archive/refs/heads/main.tar.gz |
Marca | codeql-cli/v2.12.0 | https://github.com/github/codeql/archive/refs/tags/codeql-cli/v2.12.0.zip |
Commit | aef66c4 | https://github.com/github/codeql/archive/aef66c462abe817e33aad91d97aa782a1e2ad2c7.zip |
Observação: você pode usar .zip
ou .tar.gz
nas URLs acima para solicitar um zipball ou tarball, respectivamente.
Estabilidade dos arquivos de código-fonte
Os arquivos de código-fonte são gerados na solicitação, armazenados em cache por um tempo e, em seguida, excluídos. Se o mesmo arquivo for solicitado novamente no futuro, ele será regenerado. É importante entender o que o GitHub faz para garantir os arquivos de código-fonte.
- Um arquivo de uma ID de confirmação sempre terá o mesmo conteúdo de arquivo sempre que for solicitado, assumindo que a ID de confirmação ainda está no repositório e que o nome do repositório não foi alterado.
- Como branches e marcas podem ser movidos para diferentes IDs de confirmação, os downloads futuros de um arquivo podem ter conteúdos diferentes dos arquivos baixados anteriormente do mesmo branch ou marca. Supondo que o branch ou a marca ainda aponte para a mesma ID de confirmação, ele terá o mesmo conteúdo do arquivo.
- As configurações exatas de compactação usadas para gerar um zipball ou tarball podem ser alteradas ao longo do tempo. O conteúdo extraído não será alterado se o branch ou a marca não for alterado, mas o arquivo compactado externo poderá ter um layout de byte diferente. GitHub fornecerá pelo menos seis meses de aviso prévio antes de alterar as configurações de compactação.
- O nome do repositório faz parte da estrutura de diretório dentro do arquivo. Portanto, se o nome do repositório for alterado, o nome do diretório raiz também será alterado.
Se você depender da estabilidade dos arquivos de código-fonte para reprodutibilidade (garantindo que você sempre obtenha arquivos idênticos dentro do arquivo), recomendamos usar a API REST de arquivos com uma ID de confirmação do :ref
. O uso da ID de confirmação garante que você sempre obtenha o mesmo conteúdo de arquivo dentro do arquivo e esteja imune à reescrita de marcas por repositórios ou à movimentação de cabeçalhos de branch.
Se você depender da estabilidade dos arquivos para segurança (por exemplo: para garantir que não tente descompactar um arquivo mal-intencionado), recomendamos usar versões em vez de usar downloads de origem. Para obter mais informações, confira "Sobre as versões".
Você pode usar algo como essa ação de GitHub de terceiros para criar e efetuar push desses arquivos como parte do processo de lançamento. A API REST de Ativos de Liberação pode ser usada posteriormente para recuperá-los.