git-archive - Create an archive of files from a named treegit-archive - 名前付きツリーからファイルのアーカイブを作成する


git archive [--format=<fmt>] [--list] [--prefix=<prefix>/] [<extra>]
	      [-o <file> | --output=<file>] [--worktree-attributes]
	      [--remote=<repo> [--exec=<git-upload-archive>]] <tree-ish>


Creates an archive of the specified format containing the tree structure for the named tree, and writes it out to the standard output. If <prefix> is specified it is prepended to the filenames in the archive.指定されたツリーのツリー構造を含む指定フォーマットのアーカイブを作成し、それを標準出力に書き出します。<prefix>が指定されている場合は、アーカイブ内のファイル名の前に追加されます。

git archive behaves differently when given a tree ID versus when given a commit ID or tag ID. In the first case the current time is used as the modification time of each file in the archive. In the latter case the commit time as recorded in the referenced commit object is used instead. Additionally the commit ID is stored in a global extended pax header if the tar format is used; it can be extracted using git get-tar-commit-id. In ZIP files it is stored as a file comment.ツリーIDが与えられたときとコミットIDまたはタグIDが与えられたときのgit archiveの動作は異なります。前者の場合、現在時刻がアーカイブ内の各ファイルの修正時刻として使用されます。後者の場合、参照されたコミットオブジェクトに記録されているコミット時間が代わりに使用されます。さらに、tarフォーマットが使用されている場合、コミットIDはグローバル拡張paxヘッダーに保管されます。それはgit get-tar-commit-idを使って抽出することができます。ZIPファイルでは、ファイルコメントとして保存されます。


--format=<fmt> --format = <fmt>

Format of the resulting archive: tar or zip. If this option is not given, and the output file is specified, the format is inferred from the filename if possible (e.g. writing to "" makes the output to be in the zip format). Otherwise the output format is tar.結果のアーカイブのフォーマット:タールまたは郵便番号。このオプションが指定されておらず、出力ファイルが指定されている場合、可能であればファイル名から形式が推測されます(たとえば、 ""に書き込むと出力がzip形式になります)。それ以外の場合の出力形式はtarです。

--list - リスト

Show all available formats.利用可能なフォーマットをすべて表示します。

--verbose - 冗談

Report progress to stderr.進捗をstderrに報告します。

--prefix=<prefix>/ --prefix = <prefix> /

Prepend <prefix>/ to each filename in the archive.アーカイブ内の各ファイル名の前に<prefix> /を付けます。

-o <file> -o <ファイル>
--output=<file> --output = <ファイル>

Write the archive to <file> instead of stdout.アーカイブを標準出力ではなく<file>に書き込みます。


Look for attributes in .gitattributes files in the working tree as well (see ATTRIBUTES).作業ツリーの.gitattributesファイルでも属性を探します(属性を参照)。


This can be any options that the archiver backend understands. See next section.これはアーカイバのバックエンドが理解できるオプションです。次のセクションを見てください。

--remote=<repo> --remote = <repo>

Instead of making a tar archive from the local repository, retrieve a tar archive from a remote repository. Note that the remote repository may place restrictions on which sha1 expressions may be allowed in <tree-ish>. See git-upload-archive[1] for details.ローカルリポジトリからtarアーカイブを作成する代わりに、リモートリポジトリからtarアーカイブを取得します。リモートリポジトリはどのsha1式が許されるかもしれないかについて制限を置くかもしれないことに注意してください<tree-ish>。詳細はgit-upload-archive [1]をご覧ください。

--exec=<git-upload-archive> --exec = <git-upload-archive>

Used with --remote to specify the path to the git-upload-archive on the remote side.--remoteと共に使用して、リモート側のgit-upload-archiveへのパスを指定します。

<tree-ish> <ツリー>

The tree or commit to produce an archive for.のアーカイブを作成するためのツリーまたはコミット。

<path> <パス>

Without an optional path parameter, all files and subdirectories of the current working directory are included in the archive. If one or more paths are specified, only these are included.オプションのpathパラメータを指定しないと、現在の作業ディレクトリのすべてのファイルとサブディレクトリがアーカイブに含まれます。1つ以上のパスが指定されている場合は、それらだけが含まれます。




Store the files instead of deflating them.ファイルを圧縮するのではなく保存します。


Highest and slowest compression level. You can specify any number from 1 to 9 to adjust compression speed and ratio.最高および最低の圧縮レベル。1から9までの任意の数を指定して、圧縮速度と比率を調整できます。



This variable can be used to restrict the permission bits of tar archive entries. The default is 0002, which turns off the world write bit. The special value "user" indicates that the archiving user’s umask will be used instead. See umask(2) for details. If --remote is used then only the configuration of the remote repository takes effect.この変数は、tarアーカイブエントリの許可ビットを制限するために使用できます。デフォルトは0002で、これはワールド書き込みビットをオフにします。特別な値 "user"は、アーカイブユーザーのumaskが代わりに使用されることを示します。詳細はumask(2)を参照してください。場合は--remote、次に使用されているリモートリポジトリの構成のみが有効になります。

tar.<format>.command tar。<フォーマット>。コマンド

This variable specifies a shell command through which the tar output generated by git archive should be piped. The command is executed using the shell with the generated tar file on its standard input, and should produce the final output on its standard output. Any compression-level options will be passed to the command (e.g., "-9"). An output file with the same extension as <format> will be use this format if no other format is given.この変数はによって生成されたtar出力をgit archiveパイプ処理するシェルコマンドを指定します。コマンドは、標準入力に生成されたtarファイルを使用してシェルを使用して実行され、標準出力に最終出力を生成します。任意の圧縮レベルのオプションがコマンドに渡されます(例えば、 " - 9")。<format>他の形式が指定されていない場合は、同じ形式の出力ファイルでこの形式が使用されます。

The "tar.gz" and "tgz" formats are defined automatically and default to gzip -cn. You may override them with custom commands."tar.gz"および "tgz"フォーマットは自動的に定義され、デフォルトはになっていgzip -cnます。カスタムコマンドでそれらを上書きすることができます。

tar.<format>.remote tar。<フォーマット> .remote

If true, enable <format> for use by remote clients via git-upload-archive[1]. Defaults to false for user-defined formats, but true for the "tar.gz" and "tgz" formats.trueの場合、git-upload-archive [1]を<format>介してリモートクライアントによる使用を有効にします。ユーザ定義フォーマットのデフォルトはfalseですが、 "tar.gz"および "tgz"フォーマットの場合はtrueです。


export-ignore エクスポート無視

Files and directories with the attribute export-ignore won’t be added to archive files. See gitattributes[5] for details.属性export-ignoreを持つファイルとディレクトリはアーカイブファイルに追加されません。詳細はgitattributes [5]を見てください。


If the attribute export-subst is set for a file then Git will expand several placeholders when adding this file to an archive. See gitattributes[5] for details.属性export-substがファイルに設定されている場合、Gitはこのファイルをアーカイブに追加するときにいくつかのプレースホルダーを拡張します。詳細はgitattributes [5]を見てください。

Note that attributes are by default taken from the .gitattributes files in the tree that is being archived. If you want to tweak the way the output is generated after the fact (e.g. you committed without adding an appropriate export-ignore in its .gitattributes), adjust the checked out .gitattributes file as necessary and use --worktree-attributes option. Alternatively you can keep necessary attributes that should apply while archiving any tree in your $GIT_DIR/info/attributes file.属性は、デフォルト.gitattributesではアーカイブされているツリー内のファイルから取得されます。事後に出力が生成される方法を微調整したい場合(例えば、適切なexport-ignoreを追加せずにコミットした場合.gitattributes)、.gitattributes必要に応じてチェックアウトしたファイルを調整して--worktree-attributesオプションを使用してください。あるいは、$GIT_DIR/info/attributesファイル内のツリーをアーカイブしている間に適用する必要のある属性を保持することもできます。


git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -)

Create a tar archive that contains the contents of the latest commit on the current branch, and extract it in the /var/tmp/junk directory.現在のブランチの最新のコミットの内容を含むtarアーカイブを作成し、それを/var/tmp/junkディレクトリに抽出します。

git archive --format=tar --prefix=git-1.4.0/ v1.4.0 | gzip >git-1.4.0.tar.gz

Create a compressed tarball for v1.4.0 release.v1.4.0リリース用の圧縮tarボールを作成します。

git archive --format=tar.gz --prefix=git-1.4.0/ v1.4.0 >git-1.4.0.tar.gz

Same as above, but using the builtin tar.gz handling.上記と同じですが、組み込みのtar.gz処理を使用します。

git archive --prefix=git-1.4.0/ -o git-1.4.0.tar.gz v1.4.0

Same as above, but the format is inferred from the output file.上記と同じですが、フォーマットは出力ファイルから推測されます。

git archive --format=tar --prefix=git-1.4.0/ v1.4.0^{tree} | gzip >git-1.4.0.tar.gz

Create a compressed tarball for v1.4.0 release, but without a global extended pax header.v1.4.0リリース用の圧縮tarボールを作成しますが、グローバル拡張paxヘッダーは作成しません。

git archive --format=zip --prefix=git-docs/ HEAD:Documentation/ >

Put everything in the current head’s Documentation/ directory into, with the prefix git-docs/.現在のヘッドのDocumentation /ディレクトリにあるすべてをgit-1.4.0-docs.zipにプレフィックスgit-docs /を付けて置きます。

git archive -o HEAD

Create a Zip archive that contains the contents of the latest commit on the current branch. Note that the output format is inferred by the extension of the output file.現在のブランチの最新のコミットの内容を含むZipアーカイブを作成します。出力フォーマットは、出力ファイルの拡張子によって推測されることに注意してください。

git config tar.tar.xz.command "xz -c"

Configure a "tar.xz" format for making LZMA-compressed tarfiles. You can use it specifying --format=tar.xz, or by creating an output file like -o foo.tar.xz.LZMA圧縮されたtarファイルを作成するための "tar.xz"フォーマットを設定します。あなたはそれを指定する--format=tar.xzか、またはのような出力ファイルを作ることによってそれを使うことができます-o foo.tar.xz


gitattributes[5]gitattributes [5]


Part of the git[1] suite一部のgit [1]スイート



AudioLevel plugin AudioLevelプラグイン