diff options
Diffstat (limited to 'Debian/Dgit.pm')
-rw-r--r-- | Debian/Dgit.pm | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/Debian/Dgit.pm b/Debian/Dgit.pm index 23db637..e9a85f7 100644 --- a/Debian/Dgit.pm +++ b/Debian/Dgit.pm @@ -62,7 +62,7 @@ BEGIN { git_reflog_action_msg git_update_ref_cmd rm_subdir_cached read_tree_subdir read_tree_debian read_tree_upstream - hash_commit_text + make_commit hash_commit_text reflog_cache_insert reflog_cache_lookup $package_re $component_re $deliberately_re $distro_re $versiontag_re $series_filename_re @@ -831,6 +831,15 @@ sub parsechangelog_loop ($$$) { close CLOGS or $?==SIGPIPE or failedcmd @$clogcmd; } +sub make_commit ($$) { + my ($parents, $message_paras) = @_; + my $tree = cmdoutput qw(git write-tree); + my @cmd = (qw(git commit-tree), $tree); + push @cmd, qw(-p), $_ foreach @$parents; + push @cmd, qw(-m), $_ foreach @$message_paras; + return cmdoutput @cmd; +} + sub hash_commit_text ($) { my ($text) = @_; my ($out, $in); |