Início·Comandos de terminal
Publicidade

Garanta seu bônus em uma corretora de cripto

Bônus que você recebe só por se cadastrar. As condições são as que cada corretora anuncia.

git archive

git

Uso

git archive --format=tar.gz -o <file> <tree-ish>

Exporta os arquivos de um commit como tar ou zip; deixa de fora o .git e os arquivos sem rastreio, o que rende um pacote de release mais limpo que zipar a pasta.

Opções comuns

OpçãoSignificado
--format=<fmt>tar, zip or tar.gz
-o <file>write to a file; the format is guessed from the name
--prefix=<dir>/put everything under one folder inside the archive
--add-file=<file>include an untracked file as well
--remote=<repo>let the server build it
-llist the formats this build supports

Exemplos

git archive --format=tar.gz -o app-1.2.0.tar.gz v1.2.0

a release tarball of exactly that tag

git archive --prefix=app/ -o app.zip HEAD

a zip whose contents sit inside app/

git archive -o src.zip HEAD -- src

only the src directory

O confuso é que desfazer tem várias formas: mover para onde um branch aponta não é o mesmo que criar um commit que reverte.

Como ler

  • Os colchetes [ ] marcam uma parte que você pode omitir.
  • As reticências … indicam que você pode listar vários.
  • As opções diferenciam maiúsculas: em alguns comandos -r e -R fazem coisas diferentes.

Perguntas

QO que git archive faz?

Exporta os arquivos de um commit como tar ou zip; deixa de fora o .git e os arquivos sem rastreio, o que rende um pacote de release mais limpo que zipar a pasta.

QComo se digita?

git archive --format=tar.gz -o <file> <tree-ish> — os colchetes marcam o que você pode omitir.

QQuantas opções vale a pena saber?

Aqui estão 6; a lista completa está em man git. Este comando fica em git.

Comandos relacionados

página man: man git-archive