Git keyword expansionΒΆ
We can archive the files using keywords defined in gitattributes by using the command git archive.
We archive files by:
git archive --format=tgz --worktree-attributes HEAD file1 file2 ...
The attributes are taken from the tree, and
with the option --worktree-attributes
in the checked out worktree.
Git also look at the repository local file
$GIT_DIR/info/attributes
If the attribute export-subst
is set for a file then git will expand
several placeholders with the syntax $Format:PLACEHOLDERS$
.
The place holders are defined in git log pretty formats
I use in my C source files:
/* @date $Format: %ci$
* @version Commit: $Format: %h$
* Tree: $Format: %t$
*/
To exports the committer date %ci
, the abbreviated tree hash
<%t
, and the abbreviated commit hash %h