Sök…
Syntax
- git archive [--format = <fmt>] [- list] [--prefix = <prefix> /] [<extra>] [-o <fil> | --output = <fil>] [--worktree-attribut] [--remote = <repo> [--exec = <git-upload-archive>]] <tree-ish> [<path> ...]
parametrar
Parameter | detaljer |
---|---|
--format = <fmt> | Format för det resulterande arkivet: tar eller zip . Om det här alternativet inte anges och utdatafilen anges, utgår formatet från filnamnet om möjligt. I annat fall är standardvärdet för tar . |
-l, - lista | Visa alla tillgängliga format. |
-v, --verbose | Rapportera framsteg till stderr. |
--prefix = <prefix> / | Förbered <prefix> / till varje filnamn i arkivet. |
-o <fil>, --output = <fil> | Skriv arkivet till <fil> istället för stdout. |
--worktree-attribut | Leta efter attribut i .gitattributes i .gitattributes . |
<Extra> | Detta kan vara valfritt alternativ som arkiveringsstödet förstår. För zip backend, använder -0 lagrar filerna utan att tömma dem, medan -1 till -9 kan användas för att justera komprimeringshastighet och -förhållande. |
--remote = <repo> | Hämta ett tjärarkiv från ett fjärrlager <repo> snarare än från det lokala arkivet. |
--exec = <git-upload-arkiv> | Används med - --remote att ange sökvägen till <git-upload-archive på fjärrkontrollen. |
<Tree-ish> | Trädet eller förbinder sig att producera ett arkiv för. |
<Path> | Utan en valfri parameter ingår alla filer och kataloger i den aktuella arbetskatalogen i arkivet. Om en eller flera sökvägar anges inkluderas endast dessa. |
Skapa ett arkiv med gitförvar med katalogprefix
Det anses vara god praxis att använda ett prefix när du skapar git-arkiv, så att extraktion kommer att placera alla filer i en katalog. Så här skapar du ett arkiv med HEAD
med ett katalogprefix:
git archive --output=archive-HEAD.zip --prefix=src-directory-name HEAD
När extraheras kommer alla filer att extraheras i en katalog med namnet src-directory-name
i den aktuella katalogen.
Skapa arkiv för gitförvar baserat på specifik gren, revision, tagg eller katalog
Det är också möjligt att skapa arkiv för andra objekt än HEAD
, som grenar, åtaganden, taggar och kataloger.
Så här skapar du ett arkiv för en lokal dev
:
git archive --output=archive-dev.zip --prefix=src-directory-name dev
Så här skapar du ett arkiv med en avgränsad origin/dev
:
git archive --output=archive-dev.zip --prefix=src-directory-name origin/dev
Så här skapar du ett arkiv med en tagg v.01
:
git archive --output=archive-v.01.zip --prefix=src-directory-name v.01
Skapa ett arkiv med filer i en specifik underkatalog ( sub-dir
) för revision HEAD
:
git archive zip --output=archive-sub-dir.zip --prefix=src-directory-name HEAD:sub-dir/
Skapa ett arkiv med git-arkivet
Med git archive
är det möjligt att skapa komprimerade arkiv för ett arkiv, till exempel för att distribuera utgivningar.
Skapa ett tjärarkiv för den aktuella HEAD
revisionen:
git archive --format tar HEAD | cat > archive-HEAD.tar
Skapa ett tjärarkiv för aktuell HEAD
revision med gzip-komprimering:
git archive --format tar HEAD | gzip > archive-HEAD.tar.gz
Detta kan också göras med (som använder den inbyggda tar.gz-hanteringen):
git archive --format tar.gz HEAD > archive-HEAD.tar.gz
Skapa ett zip-arkiv för den aktuella HEAD
revisionen:
git archive --format zip HEAD > archive-HEAD.zip
Alternativt är det möjligt att bara ange en utdatafil med giltigt tillägg och formatet och komprimeringstypen kommer att härledas från den:
git archive --output=archive-HEAD.tar.gz HEAD