Este é o comando git-cat-file que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas múltiplas estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online de Windows ou emulador online de MAC OS.
PROGRAMA:
NOME
git-cat-file - Fornece informações de conteúdo ou tipo e tamanho para objetos de repositório
SINOPSE
git arquivo-gato (-t [--allow-tipo desconhecido]| -s [--allow-tipo desconhecido]| -e | -p | | --textconv)
git arquivo-gato (--batch | --batch-check) [--follow-symlinks]
DESCRIÇÃO
Na sua primeira forma, o comando fornece o conteúdo ou o tipo de um objeto no
repositório. O tipo é obrigatório, a menos que -t or -p é usado para encontrar o tipo de objeto, ou -s is
usado para encontrar o tamanho do objeto, ou --textconv é usado (o que implica o tipo "blob").
Na segunda forma, uma lista de objetos (separados por avanços de linha) é fornecida em stdin, e
o SHA-1, tipo e tamanho de cada objeto são impressos em stdout.
OPÇÕES
O nome do objeto a ser mostrado. Para uma lista mais completa de maneiras de soletrar objeto
nomes, consulte a seção "ESPECIFICANDO REVISÕES" em revisões do gitre(7).
-t
Em vez do conteúdo, mostre o tipo de objeto identificado por .
-s
Em vez do conteúdo, mostre o tamanho do objeto identificado por .
-e
Suprimir todas as saídas; em vez disso, saia com status zero se existe e é válido
objeto.
-p
Imprima o conteúdo de com base em seu tipo.
Normalmente, isso corresponde ao tipo real de mas pedindo um tipo que possa
ser trivialmente desreferenciado do dado também é permitido. Um exemplo é
peça uma "árvore" com sendo um objeto commit que o contém, ou para solicitar um
"bolha" com sendo um objeto de tag que aponta para ele.
--textconv
Mostre o conteúdo transformado por um filtro textconv. Nesse caso, tem ser de
a forma : , ou : para aplicar o filtro ao conteúdo
registrado no índice em .
--lote, --lote=
Imprima informações e conteúdos de objetos para cada objeto fornecido em stdin. Talvez não seja
combinado com quaisquer outras opções ou argumentos. Consulte a seção SAÍDA DO LOTE abaixo para
Detalhes.
--batch-check, --batch-check=
Imprima informações de objeto para cada objeto fornecido em stdin. Não pode ser combinado com
quaisquer outras opções ou argumentos. Consulte a seção SAÍDA DO LOTE abaixo para obter detalhes.
--batch-todos-objetos
Em vez de ler uma lista de objetos no stdin, execute a operação em lote solicitada
em todos os objetos no repositório e em quaisquer armazenamentos de objetos alternativos (não apenas acessíveis
objetos). Requer que --batch ou --batch-check sejam especificados. Observe que os objetos são
visitados em ordem classificada por seus hashes.
--amortecedor
Normalmente, a saída em lote é liberada após a saída de cada objeto, para que um processo possa
ler e escrever interativamente no arquivo cat. Com esta opção, a saída usa normal
buffer de estúdio; isso é muito mais eficiente ao invocar --batch-check em um grande
número de objetos.
--allow-tipo desconhecido
Permitir que -s ou -t consulte objetos quebrados/corrompidos de tipo desconhecido.
--seguir links simbólicos
Com --batch ou --batch-check, siga os links simbólicos dentro do repositório ao solicitar
objetos com expressões SHA-1 estendidas no formato tree-ish:path-in-tree. Em vez de
fornecendo saída sobre o próprio link, fornece saída sobre o objeto vinculado. Se
um link simbólico aponta para fora da árvore (por exemplo, um link para /foo ou um link de nível raiz para
../foo), a parte do link que está fora da árvore será impressa.
Esta opção (atualmente) não funciona corretamente quando um objeto no índice é
especificado (por exemplo, :link em vez de HEAD:link) em vez de um na árvore.
Esta opção não pode (atualmente) ser usada a menos que --batch ou --batch-check seja usado.
Por exemplo, considere um repositório git contendo:
f: um arquivo contendo "hello\n"
link: um link simbólico para f
dir/link: um link simbólico para ../f
plink: um link simbólico para ../f
alink: um link simbólico para / Etc / passwd
Para um arquivo normal f, echo HEAD:f | git cat-file --batch imprimiria
ce013625030ba8dba906f756967f9e9ca394464a blob 6
E ecoe HEAD:link | git cat-file --batch --follow-symlinks imprimiria o mesmo
coisa, assim como HEAD:dir/link, já que ambos apontam para HEAD:f.
Sem --follow-symlinks, eles imprimiriam dados sobre o próprio link simbólico. No
caso de HEAD:link, você veria
4d1ae35ba2c8ec712fa2a379db44ad639ca277bd blob 1
Tanto plink quanto alink apontam para fora da árvore, então eles imprimiriam respectivamente:
link simbólico 4
../f
link simbólico 11
/ Etc / passwd
SAÍDA
If -t é especificado, um dos .
If -s é especificado, o tamanho do em bytes.
If -e é especificado, nenhuma saída.
If -p é especificado, o conteúdo de são bem impressos.
Se é especificado, o conteúdo bruto (embora não compactado) do vai ser
devolvida.
LOTE SAÍDA
Se --batch ou --batch-check for fornecido, cat-file lerá objetos de stdin, um por linha,
e imprima informações sobre eles. Por padrão, toda a linha é considerada um objeto,
como se fosse alimentado git-rev-parse(1).
Você pode especificar as informações mostradas para cada objeto usando um personalizado . O
é copiado literalmente para stdout para cada objeto, com espaços reservados no formato
%(atom) expandido, seguido por uma nova linha. Os átomos disponíveis são:
nome do objeto
O nome do objeto de 40 hexadecimais do objeto.
Tipo de objeto
O tipo do objeto (o mesmo dos relatórios cat-file -t).
objetivar
O tamanho, em bytes, do objeto (o mesmo dos relatórios cat-file -s).
tamanho do objeto: disco
O tamanho, em bytes, que o objeto ocupa no disco. Veja a nota sobre tamanhos no disco
na seção ADVERTÊNCIAS abaixo.
base delta
Se o objeto for armazenado como um delta no disco, isso se expandirá para o sha40 de 1 hexadecimais do
objeto base delta. Caso contrário, expande para o nulo sha1 (40 zeros). Veja ADVERTÊNCIAS abaixo.
resto
Se este átomo for usado na string de saída, as linhas de entrada serão divididas no primeiro
limite de espaço em branco. Todos os caracteres antes desse espaço em branco são considerados
nome do objeto; caracteres após a primeira execução de espaços em branco (ou seja, o "resto" do
linha) são produzidos no lugar do átomo% (resto).
Se nenhum formato for especificado, o formato padrão será %(objectname) %(objecttype)
%(tamanho do objeto).
Se --batch for especificado, as informações do objeto serão seguidas pelo conteúdo do objeto
(consistindo em %(objectsize) bytes), seguido por uma nova linha.
Por exemplo, --batch sem um formato personalizado produziria:
SP SP SE
LF
Considerando que --batch-check='%(objectname) %(objecttype)' produziria:
SP SE
Se um nome for especificado no stdin que não pode ser resolvido para um objeto no repositório,
então cat-file irá ignorar qualquer formato personalizado e imprimir:
SP faltando LF
Se --follow-symlinks for usado e um link simbólico no repositório apontar para fora do
repositório, então cat-file irá ignorar qualquer formato personalizado e imprimir:
link simbólico SP SE
SE
O link simbólico será absoluto (começando com /) ou relativo à raiz da árvore.
Por exemplo, se dir/link aponta para ../../foo, então será ../foo. é
o tamanho do link simbólico em bytes.
Se --follow-symlinks for usado, as seguintes mensagens de erro serão exibidas:
SP faltando LF
é impresso quando o link simbólico inicial solicitado não existe.
balançando SP SE
SE
é impresso quando o link simbólico inicial existe, mas algo que ele (transitivo de) aponta
para não.
circuito SP SE
SE
é impresso para loops de links simbólicos (ou quaisquer links simbólicos que requeiram mais de 40 resoluções de link
resolver).
notdir SP SE
SE
é impresso quando, durante a resolução do link simbólico, um arquivo é usado como nome de diretório.
RESSALVAS
Observe que os tamanhos dos objetos no disco são relatados com precisão, mas deve-se tomar cuidado
ao tirar conclusões sobre quais referências ou objetos são responsáveis pelo uso do disco. O
O tamanho de um objeto não delta compactado pode ser muito maior que o tamanho dos objetos que delta
contra ele, mas a escolha de qual objeto é a base e qual é o delta é arbitrária
e está sujeito a alterações durante uma reembalagem.
Observe também que múltiplas cópias de um objeto podem estar presentes no banco de dados de objetos; nisso
Neste caso, não está definido qual tamanho de cópia ou base delta será reportado.
GIT
Parte da git(1) suíte
Use git-cat-file online usando serviços onworks.net