Esta versão do GitHub Enterprise foi descontinuada em 2021-06-09. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, melhorar a segurança e novos recursos, upgrade to the latest version of GitHub Enterprise. Para ajuda com a atualização, contact GitHub Enterprise support.

Configurar o Large File Storage do Git para a sua sempresa

Git Large File Storage (Git LFS) é uma extensão de código aberto para Git que permite trabalhar com arquivos grandes da mesma maneira que com outros arquivos de texto.

Sobre o Git Large File Storage

Git Large File Storage (Git LFS) é uma extensão de código aberto para Git que permite trabalhar com arquivos grandes da mesma maneira que com outros arquivos de texto. Você pode usar Git Large File Storage com um único repositório, todos os seus repositórios pessoais ou organizacionais, ou com cada repositório na sua empresa. Antes de habilitar Git LFS para repositórios ou organizações específicos, você deve habilitar Git LFS para a sua empresa.

Por padrão, o cliente de Git Large File Storage armazena grandes ativos no mesmo servidor que hospeda o repositório do Git. Quando Git LFS está habilitado em sua instância do GitHub Enterprise Server, os grandes ativos são armazenados na partição de dados em /data/user/storage.

Os usuários não podem fazer push de ativos de Git LFS para GitHub Enterprise Server se Git LFS estiver desabilitado na empresa ou no repositório.

Para obter mais informações, consulte "Sobre o Git Large File Storage", "Controlar versões em arquivos grandes" e acesse o site do projeto do Git Large File Storage.

Configurar Git Large File Storage para a sua empresa

  1. Acesse a conta corporativa visitando https://HOSTNAME/enterprises/ENTERPRISE-NAME, substituindo HOSTNAME pelo nome de host da sua instância e ENTERPRISE-NAME pelo nome da conta da sua empresa.
  1. Na barra lateral da conta corporativa, clique em Settings. Aba de configurações na barra lateral de contas corporativas

  2. Em Políticas, clique em Opções. Aba Opções na barra lateral de configurações da conta corporativa

  3. No menu suspenso em "Git LFS access" (Acesso ao Git LFS), clique em Enabled (Habilitado) ou Disabled (Desabilitado). Acesso ao Git LFS

Configurar o Git Large File Storage em um repositório específico

Nota: Cada repositório herda automaticamente as configurações padrão da organização ou usuário que o possui. Você não pode substituir a configuração padrão se o proprietário do repositório tiver aplicado a configuração em todos os seus repositórios.

  1. A partir de uma conta administrativa em GitHub Enterprise Server, clique em no canto superior direito de qualquer página. Ícone de foguete para acessar as configurações de administrador do site
  2. No campo de busca, digite o nome do repositório e clique em Search (Pesquisar). campo de pesquisa de configurações de administrador do site
  3. Nos resultados da pesquisa, clique no nome do repositório. Opções de pesquisa das configurações do administrador
  4. No canto superior direito da página, clique em Admin. Ferramentas Administrativas
  5. Na barra lateral esquerda, clique em Admin. Ferramentas Administrativas
  6. Em "Git LFS", clique Enable (Ativar) ou Disable (Desativar). Botão Desabilitar

Configurar o Git Large File Storage para cada repositório pertencente a uma conta ou organização

  1. A partir de uma conta administrativa em GitHub Enterprise Server, clique em no canto superior direito de qualquer página. Ícone de foguete para acessar as configurações de administrador do site
  2. No campo de busca, digite o nome do usuário e clique em Search (Pesquisar). campo de pesquisa de configurações de administrador do site
  3. Nos resultados da pesquisa, clique no nome do usuário ou organização. Opções de pesquisa das configurações do administrador
  4. No canto superior direito da página, clique em Admin. Ferramentas Administrativas
  5. Na barra lateral esquerda, clique em Admin. Ferramentas Administrativas
  6. Em "Git LFS", clique Enable (Ativar) ou Disable (Desativar). Botão Desabilitar

Configurar o Git Large File Storage para uso em servidores de terceiros

Por padrão, o cliente de Git Large File Storage armazena grandes ativos no mesmo servidor que hospeda o repositório do Git. Quando Git LFS está habilitado em sua instância do GitHub Enterprise Server, os grandes ativos são armazenados na partição de dados em /data/user/storage.

Os usuários não podem fazer push de ativos de Git LFS para GitHub Enterprise Server se Git LFS estiver desabilitado na empresa ou no repositório.

  1. Desabilite Git LFS em sua instância do GitHub Enterprise Server. Para obter mais informações, consulte "Configurar Git Large File Storage para a sua empresa".

  2. Crie um arquivo de configuração do Git LFS que aponte para o servidor de terceiros.

    # Show default configuration
    $ git lfs env
    > git-lfs/1.1.0 (GitHub; darwin amd64; go 1.5.1; git 94d356c)
    > git version 2.7.4 (Apple Git-66)
     
    > Endpoint=https://GITHUB-ENTERPRISE-HOST/path/to/repo/info/lfs (auth=basic)
     
    # Create .lfsconfig that points to third party server.
    $ git config -f .lfsconfig remote.origin.lfsurl https://THIRD-PARTY-LFS-SERVER/path/to/repo
    $ git lfs env
    > git-lfs/1.1.0 (GitHub; darwin amd64; go 1.5.1; git 94d356c)
    > git version 2.7.4 (Apple Git-66)
     
    > Endpoint=https://THIRD-PARTY-LFS-SERVER/path/to/repo/info/lfs (auth=none)
     
    # Show the contents of .lfsconfig
    $ cat .lfsconfig
    [remote "origin"]
    lfsurl = https://THIRD-PARTY-LFS-SERVER/path/to/repo
  3. Para manter a mesma configuração do Git LFS em todos os usuários, faça commit de um arquivo .lfsconfig personalizado no repositório.

    $ git add .lfsconfig
    $ git commit -m "Adding LFS config file"
  4. Migre qualquer ativo do Git LFS. Para obter mais informações, consulte "Migrar para um servidor diferente do Git Large File Storage".

Migrar para outro servidor do Git Large File Storage

Antes de migrar para outro servidor do Git Large File Storage, configure o Git LFS para usar um servidor de terceiros. Para obter mais informações, consulte "Configurar o Git Large File Storage para utilizar um servidor de terceiros".

  1. Configure o repositório com outro remote.

    $ git remote add NEW-REMOTE https://NEW-REMOTE-HOSTNAME/path/to/repo
     
    $ git lfs env
    > git-lfs/1.1.0 (GitHub; darwin amd64; go 1.5.1; git 94d356c)
    > git version 2.7.4 (Apple Git-66)
     
    > Endpoint=https://GITHUB-ENTERPRISE-HOST/path/to/repo/info/lfs (auth=basic)
    > Endpoint (NEW-REMOTE)=https://NEW-REMOTE-HOSTNAME/path/to/repo/info/lfs (auth=none)
  2. Faça fetch de todos os objetos do remote antigo.

    $ git lfs fetch origin --all
    > Scanning for all objects ever referenced...
    > ✔ 16 objects found
    > Fetching objects...
    > Git LFS: (16 de 16 arquivos) 48.71 MB / 48.85 MB
  3. Faça push de todos os objetos para o remote novo.

    $ git lfs push NEW-REMOTE --all
    > Scanning for all objects ever referenced...
    > ✔ 16 objects found
    > Pushing objects...
    > Git LFS: (16 de 16 arquivos) 48.00 MB / 48.85 MB, 879.10 KB ignorados

Leia mais