
% git archive --format tar master > archive.tar
% file archive.tar
archive.tar: POSIX tar archive
% tar cf a.tar archive.tar
% file a.tar
a.tar: POSIX tar archive (GNU)
7zip não pode descompactar o arquivo tar criado por "git archive". Aparentemente existem algumas diferenças.
A razão pela qual estou perguntando é que gostaria de poder descompactar o arquivo tar do git no Windows e o 7zip é um ótimo utilitário. Existe algum sinalizador/solução alternativa (exceto descompactar o arquivo tar criado pelo git e empacotá-lo com o GNU tar).
Responder1
git-archive
cria apenas arquivos tar PAX e o 7-Zip é incapaz de ler arquivos tar PAX. Use um formato diferente com git-archive
, pós-processe os arquivos criados para recompactar usando tar
ou use uma ferramenta diferente no Windows.
Responder2
$: git archive --list
tar
tgz
tar.gz
zip
Você recebe o zip listado na lista de arquivos disponíveis? Você não poderia simplesmente usar zip em vez de tar para criá-los?
Se você estiver usando o git para arquivar, você pode se perguntar que não há uma maneira de extrair o arquivo usando a mesma ferramenta. Estamos com sorte, como está, nas páginas de manual:
git-get-tar-commit-id(1)
Extract commit ID from an archive created using git-archive.