diff options
Diffstat (limited to 'dgit')
-rwxr-xr-x | dgit | 21 |
1 files changed, 21 insertions, 0 deletions
@@ -1668,8 +1668,24 @@ sub setup_mergechangelogs (;$) { rename "$attrs.new", "$attrs" or die "$attrs: $!"; } +sub setup_useremail (;$) { + my ($always) = @_; + return unless $always || access_cfg_bool(1, 'setup-useremail'); + + my $setup = sub { + my ($k, $envvar) = @_; + my $v = access_cfg("user-$k", 'RETURN-UNDEF') // $ENV{$envvar}; + return unless defined $v; + set_local_git_config "user.$k", $v; + }; + + $setup->('email', 'DEBEMAIL'); + $setup->('name', 'DEBFULLNAME'); +} + sub setup_new_tree () { setup_mergechangelogs(); + setup_useremail(); } sub clone ($) { @@ -3031,6 +3047,11 @@ sub cmd_setup_mergechangelogs { setup_mergechangelogs(1); } +sub cmd_setup_useremail { + badusage "no arguments allowed to dgit setup-mergechangelogs" if @ARGV; + setup_useremail(1); +} + sub cmd_setup_new_tree { badusage "no arguments allowed to dgit setup-tree" if @ARGV; setup_new_tree(); |