summaryrefslogtreecommitdiff
path: root/builtin-commit-tree.c
diff options
context:
space:
mode:
authorShawn O. Pearce <spearce@spearce.org>2008-09-25 09:16:33 -0700
committerShawn O. Pearce <spearce@spearce.org>2008-09-25 09:16:33 -0700
commit1fa24f8f3d950b17ac15979c09b733c8e6f5c00c (patch)
treecd2c8c5995a42a407daabd1012d9b46faf180a9b /builtin-commit-tree.c
parent81b84bcbe3cc6a29a62fb1a69c68764ad6c0feeb (diff)
parent7a172b0dcb9d8ac2311a5c3f674f711476872e71 (diff)
downloadgit-1fa24f8f3d950b17ac15979c09b733c8e6f5c00c.tar.gz
Merge branch 'mv/commit-tree'
* mv/commit-tree: t7603: add new testcases to ensure builtin-commit uses reduce_heads() builtin-commit: use commit_tree() commit_tree(): add a new author parameter
Diffstat (limited to 'builtin-commit-tree.c')
-rw-r--r--builtin-commit-tree.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/builtin-commit-tree.c b/builtin-commit-tree.c
index f2684bb75e..0453425c47 100644
--- a/builtin-commit-tree.c
+++ b/builtin-commit-tree.c
@@ -46,7 +46,8 @@ static const char commit_utf8_warn[] =
"variable i18n.commitencoding to the encoding your project uses.\n";
int commit_tree(const char *msg, unsigned char *tree,
- struct commit_list *parents, unsigned char *ret)
+ struct commit_list *parents, unsigned char *ret,
+ const char *author)
{
int result;
int encoding_is_utf8;
@@ -74,7 +75,9 @@ int commit_tree(const char *msg, unsigned char *tree,
}
/* Person/date information */
- strbuf_addf(&buffer, "author %s\n", git_author_info(IDENT_ERROR_ON_NO_NAME));
+ if (!author)
+ author = git_author_info(IDENT_ERROR_ON_NO_NAME);
+ strbuf_addf(&buffer, "author %s\n", author);
strbuf_addf(&buffer, "committer %s\n", git_committer_info(IDENT_ERROR_ON_NO_NAME));
if (!encoding_is_utf8)
strbuf_addf(&buffer, "encoding %s\n", git_commit_encoding);
@@ -123,7 +126,7 @@ int cmd_commit_tree(int argc, const char **argv, const char *prefix)
if (strbuf_read(&buffer, 0, 0) < 0)
die("git commit-tree: read returned %s", strerror(errno));
- if (!commit_tree(buffer.buf, tree_sha1, parents, commit_sha1)) {
+ if (!commit_tree(buffer.buf, tree_sha1, parents, commit_sha1, NULL)) {
printf("%s\n", sha1_to_hex(commit_sha1));
return 0;
}