git-gc - Online na nuvem

Este é o comando git-gc que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


git-gc - Limpa arquivos desnecessários e otimiza o repositório local

SINOPSE


git gc [--aggressive] [--auto] [--quiet] [--prune = | --no-prune] [--force]

DESCRIÇÃO


Executa uma série de tarefas de manutenção dentro do repositório atual, como compactar
revisões de arquivo (para reduzir o espaço em disco e aumentar o desempenho) e remover inacessíveis
objetos que podem ter sido criados a partir de invocações anteriores de git adicionar.

Os usuários são encorajados a executar esta tarefa em uma base regular dentro de cada repositório para
manter uma boa utilização do espaço em disco e um bom desempenho operacional.

Alguns comandos git podem ser executados automaticamente git gc; consulte o sinalizador --auto abaixo para obter detalhes. Se
você sabe o que está fazendo e tudo o que deseja é desativar este comportamento permanentemente
sem outras considerações, basta fazer:

$ git config --global gc.auto 0

OPÇÕES


--agressivo
Geralmente git gc é executado muito rapidamente, proporcionando boa utilização do espaço em disco e
atuação. Esta opção irá causar git gc para otimizar de forma mais agressiva o
repositório à custa de demorar muito mais tempo. Os efeitos desta otimização
são persistentes, portanto, essa opção só precisa ser usada ocasionalmente; a cada poucas centenas
changesets ou assim.

--auto
Com esta opção, git gc verifica se alguma limpeza é necessária; se não, sai
sem realizar nenhum trabalho. Alguns comandos git executam git gc --auto após executar
operações que podem criar muitos objetos soltos.

A limpeza é necessária se houver muitos objetos soltos ou muitos pacotes no
repositório. Se o número de objetos soltos exceder o valor do gc.auto
variável de configuração, todos os objetos soltos são combinados em um único pacote usando
git repack -d -l. Definir o valor de gc.auto como 0 desativa o empacotamento automático de
objetos soltos.

Se o número de pacotes exceder o valor de gc.autoPackLimit, os pacotes existentes
(exceto aqueles marcados com um arquivo .keep) são consolidados em um único pacote usando
a opção -A de git Reembalar. Definir gc.autoPackLimit como 0 desativa automático
consolidação de packs.

--prune =
Remova objetos soltos anteriores à data (o padrão é 2 semanas atrás, substituível pela configuração
variável gc.pruneExpire). --prune = todos os objetos soltos de poda independente de sua idade (fazer
não use --prune = all a menos que saiba exatamente o que está fazendo. A menos que o repositório
está quiescente, você perderá objetos recém-criados que não foram ancorados com o
refs e acabam corrompendo seu repositório). --prune está ativado por padrão.

--sem poda
Não podar nenhum objeto solto.

--quieto
Suprima todos os relatórios de progresso.

--força
Força o git gc a ser executado mesmo se houver outra instância do git gc em execução neste
repositório.

CONFIGURAÇÃO


A variável de configuração opcional gc.reflogExpire pode ser definido para indicar quanto tempo
entradas históricas dentro do reflog de cada branch devem permanecer disponíveis neste repositório.
A configuração é expressa como um período de tempo, por exemplo 90 dias or 3 mês. É o padrão
para 90 dias.

A variável de configuração opcional gc.reflogExpireUnreachable pode ser definido para indicar como
entradas de reflog históricas longas que não fazem parte do ramo atual devem permanecer
disponível neste repositório. Esses tipos de entradas geralmente são criados como resultado de
usando git commit --amend ou git rebase e são os commits anteriores à correção ou rebase
ocorrendo. Uma vez que essas mudanças não fazem parte do projeto atual, a maioria dos usuários vai querer
expire-os mais cedo. Esta opção é padronizada para 30 dias.

As duas variáveis ​​de configuração acima podem ser fornecidas a um padrão. Por exemplo, isso define
valores de expiração não padrão apenas para filiais de rastreamento remoto:

[gc "refs / remotes / *"]
reflogExpire = nunca
reflogExpireUnreachable = 3 dias

A variável de configuração opcional gc.rerereResolvido indica por quanto tempo os registros de
Os conflitos de mesclagem que você resolveu anteriormente são mantidos. O padrão é 60 dias.

A variável de configuração opcional gc.rerereNão resolvido indica por quanto tempo os registros de
Os conflitos de mesclagem que você não resolveu são mantidos. O padrão é 15 dias.

A variável de configuração opcional gc.packRefs determina se git gc é executado git referências de pacote.
Isso pode ser definido como "notbare" para habilitá-lo em todos os repositórios não básicos ou pode ser definido como um
valor booleano. O padrão é verdadeiro.

A variável de configuração opcional gc.aggressiveWindow controla quanto tempo é gasto
otimizar a compressão delta dos objetos no repositório quando o --aggressive
opção é especificada. Quanto maior o valor, mais tempo é gasto na otimização do delta
compressão. Veja a documentação para a opção --window 'em git-repack(1) para mais
detalhes. O padrão é 250.

Da mesma forma, a variável de configuração opcional gc.aggressiveDepth controles - opção de profundidade
in git-repack(1). O padrão é 250.

A variável de configuração opcional gc.pruneExpire controla quantos anos o não referenciado solto
os objetos precisam ser antes de serem podados. O padrão é "2 semanas atrás".

NOTAS


git gc se esforça ao máximo para se proteger com relação ao lixo que coleta. Em particular,
mantenha não apenas objetos referenciados por seu conjunto atual de branches e tags, mas também
objetos referenciados pelo índice, ramos de rastreamento remoto, refs salvos por git ramo-filtro
em refs / original / ou reflogs (que podem fazer referência a commits em branches que foram posteriormente
alterado ou rebobinado).

Se você está esperando que alguns objetos sejam coletados e eles não são, verifique todos aqueles
locais e decida se faz sentido no seu caso remover essas referências.

HOOKS


O git gc --auto comando irá executar o pré-auto-gc gancho. Ver gitooks(5) para mais
informações.

Use git-gc online usando serviços onworks.net



Programas online mais recentes para Linux e Windows