Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
- 2.44.1 → 2.45.2 no changes
- 2.44.0
02/23/24
- 2.43.1 → 2.43.5 no changes
- 2.43.0
11/20/23
- 2.42.1 → 2.42.3 no changes
- 2.42.0
08/21/23
- 2.36.1 → 2.41.2 no changes
- 2.36.0
04/18/22
- 2.34.1 → 2.35.8 no changes
- 2.34.0
11/15/21
- 2.31.1 → 2.33.8 no changes
- 2.31.0
03/15/21
- 2.29.1 → 2.30.9 no changes
- 2.29.0
10/19/20
- 2.28.1 no changes
- 2.28.0
07/27/20
- 2.18.1 → 2.27.1 no changes
- 2.18.0
06/21/18
- 2.17.1 → 2.17.6 no changes
- 2.17.0
04/02/18
- 2.12.5 → 2.16.6 no changes
- 2.11.4
09/22/17
- 2.1.4 → 2.10.5 no changes
- 2.0.5
12/17/14
NOME
git-index-pack - Construa um pacote do arquivo do índice para um arquivo compactado já existente
RESUMO
git index-pack [-v] [-o <index-file>] [--[no-]rev-index] <pack-file> git index-pack --stdin [--fix-thin] [--keep] [-v] [-o <index-file>] [--[no-]rev-index] [<pack-file>]
DESCRIÇÃO
Faz a leitura de um arquivo compactado (.pack) do arquivo informado e cria um pacote do arquivo do índice (.idx) para ele e opcionalmente escreve um índice reverso(.rev) para o pacote informado. O arquivo compactado junto com o pacote do índice, pode ser colocado no diretório objects/pack/ de um repositório Git.
OPÇÕES
- -v
Seja detalhado sobre o que está acontecendo, incluindo a condição geral do progresso.
- -o <arquivo-índice>
Escreva o índice do pacote gerado no arquivo especificado. Sem essa opção, o nome do arquivo do pacote do arquivo do índice é construído a partir do nome do arquivo compactado substituindo .pack por .idx (e o programa falha caso o nome do arquivo compactado não termine com .pack).
- --[no-]rev-index
Quando este sinalizador for informado, gere um índice reverso (um arquivo
.rev
) correspondente ao pacote informado. Caso--verify
seja usado, certifique-se que o índice reverso existente esteja correto. Tem precedência sobrepack.writeReverseIndex
.- --stdin
Quando esta opção é informada, o pacote é lido a partir do stdin e uma cópia é gravada no <pack-file>. Caso o <pack-file> não seja informado, o pacote será gravado no diretório objects/pack/ do repositório Git atual com um nome predefinido determinado através do conteúdo do pacote. Caso o <pack-file> não seja informado, considere utilizar a opção
--keep
para evitar uma condição de corrida entre este processo e o git repack.- --fix-thin
Corrija um pacote "thin" produzido por
git pack-objects --thin
(para mais detalhes, consulte git-pack-objects[1]) adicionando os objetos excluídos nos quais os objetos "deltificados" utilizam como base no pacote. Esta opção só faz sentido caso seja utilizado em conjunto com--stdin
.- --keep
Antes de mover o índice para seu destino final, crie um arquivo .keep vazio para o arquivo do pacote associado. Essa opção geralmente é necessária com --stdin para impedir que um processo simultâneo do git repack exclua o pacote e o índice recém-construídos antes que as refs possam ser atualizadas para utilizar os objetos existentes no pacote.
- --keep=<msg>
Assim como a opção
--keep
, crie um arquivo .keep antes de mover o índice para seu destino final. Contudo, em vez de criar um local do arquivo vazio <msg>, seguido de um LF no arquivo .keep. A mensagem <msg> pode ser pesquisada posteriormente em todos os arquivos .keep para localizar qualquer um que tenha perdido a sua utilidade.- --index-version=<version>[,<offset>]
Isso foi pensado para ser utilizado apenas pelo conjunto de testes. Ele permite impor a versão do índice do pacote gerado e impor as entradas no índice com 64 bits nos objetos localizados acima da compensação informada.
- --strict
Encerre, caso o pacote contenha objetos ou links quebrados.
- --progress-title
Apenas para uso interno.
Defina o título da barra de progresso. O título predefinido é "Receber objetos" e "Indexar objetos" quando a opção
--stdin
for usada.- --check-self-contained-and-connected
Encerre caso o pacote contenha links quebrados. Apenas para utilização interna.
- --fsck-objects
Apenas para uso interno.
O processo é encerrado caso o pacote contenha objetos quebrados. Caso o pacote contiver uma árvore apontando para uma bolha ".gitmodules" que não exista, imprima o hash desta bolha (para que o requerente o verifique) após o hash que vai para o nome do arquivo pack/idx (consulte "Notas").
- --threads=<n>
Determina a quantidade de "threads" a serem geradas para resolver os deltas. Isso requer que os objetos do pacote sejam compilados com "pthreads", caso contrário esta opção será ignorada exibindo um aviso. Isso visa reduzir o tempo do empacotamento em máquinas com multiprocessados. A quantidade de memória necessária para a janela de pesquisa delta é multiplicada pela quantidade de threads. Definindo como
0
faz com que o Git detecte automaticamente a quantidade de CPUs e defina a quantidade de "threads" proporcionalmente e utiliza o máximo de 3 "threads".- --max-input-size=<tamanho>
Encerre caso o pacote seja maior que <tamanho>.
- --object-format=<hash-algorithm>
Defina o formato do objeto informado (algoritmo hash) para o pacote. Os valores válidos são sha1 e (se ativado) sha256. A predefinição é o algoritmo para o repositório atual (definido através da opção
extensions.objectFormat
) ou sha1 caso nenhum valor seja definido dentro ou fora do repositório.Esta opção não pode ser utilizada com --stdin.
Observação: No momento, não há interoperabilidade entre os repositórios SHA-256 e os repositórios SHA-1.
Alertamos no passado que os repositórios SHA-256 podem exigir alterações incompatíveis com versões anteriores quando implementamos estes recursos de interoperabilidade. Hoje, esperamos apenas alterações compatíveis. Além disso, se essas alterações forem necessárias, pode-se esperar que os repositórios SHA-256 criados com o Git atual possam ser usados por versões futuras do Git sem perda de dados.
- --promisor[=<mensagem>]
Antes fazer o commit do índice do pacote, crie um arquivo .promisor para este pacote. É particularmente útil ao escrever um pacote promissor com a opção
--fix-thin
já que o nome do pacote não é definitivo até que o pacote tenha sido totalmente escrito. Caso uma<menssagem>
seja fornecida, esse conteúdo será gravado no arquivo .promisor para uma referência futura. Consulte o clone parcial para obter mais informações.
OBSERVAÇÕES
Depois que o índice é criado, o hash que vai para o nome do arquivo pack/idx é gerado no stdout. Caso a opção --stdin
também tenha sido usado, ele será prefixado por "pack\t" ou "keep\t" se um novo arquivo .keep tiver sido criado com êxito. Isso é útil para remover um arquivo .keep usado como um bloqueio para evitar a corrida com o git repack mencionada acima.
GIT
Parte do conjunto git[1]