@@ -14,8 +14,8 @@ import (
1414
1515// doMergeStyleSquash squashes the tracking branch on the current HEAD (=base)
1616func doMergeStyleSquash (ctx * mergeContext , message string ) error {
17- cmd := git .NewCommand (ctx , "merge" , "--squash" ).AddDynamicArguments (trackingBranch )
18- if err := runMergeCommand (ctx , repo_model .MergeStyleSquash , cmd ); err != nil {
17+ cmdMerge := git .NewCommand (ctx , "merge" , "--squash" ).AddDynamicArguments (trackingBranch )
18+ if err := runMergeCommand (ctx , repo_model .MergeStyleSquash , cmdMerge ); err != nil {
1919 log .Error ("%-v Unable to merge --squash tracking into base: %v" , ctx .pr , err )
2020 return err
2121 }
@@ -25,27 +25,21 @@ func doMergeStyleSquash(ctx *mergeContext, message string) error {
2525 return fmt .Errorf ("LoadPoster: %w" , err )
2626 }
2727 sig := ctx .pr .Issue .Poster .NewGitSig ()
28- if len (ctx .signArg ) == 0 {
29- if err := git .NewCommand (ctx , "commit" ).
30- AddOptionFormat ("--author='%s <%s>'" , sig .Name , sig .Email ).
31- AddOptionFormat ("--message=%s" , message ).
32- Run (ctx .RunOpts ()); err != nil {
33- log .Error ("git commit %-v: %v\n %s\n %s" , ctx .pr , err , ctx .outbuf .String (), ctx .errbuf .String ())
34- return fmt .Errorf ("git commit [%s:%s -> %s:%s]: %w\n %s\n %s" , ctx .pr .HeadRepo .FullName (), ctx .pr .HeadBranch , ctx .pr .BaseRepo .FullName (), ctx .pr .BaseBranch , err , ctx .outbuf .String (), ctx .errbuf .String ())
35- }
28+ if setting .Repository .PullRequest .AddCoCommitterTrailers && ctx .committer .String () != sig .String () {
29+ // add trailer
30+ message += fmt .Sprintf ("\n Co-authored-by: %s\n Co-committed-by: %s\n " , sig .String (), sig .String ())
31+ }
32+ cmdCommit := git .NewCommand (ctx , "commit" ).
33+ AddOptionFormat ("--author='%s <%s>'" , sig .Name , sig .Email ).
34+ AddOptionFormat ("--message=%s" , message )
35+ if ctx .signKeyID == "" {
36+ cmdCommit .AddArguments ("--no-gpg-sign" )
3637 } else {
37- if setting .Repository .PullRequest .AddCoCommitterTrailers && ctx .committer .String () != sig .String () {
38- // add trailer
39- message += fmt .Sprintf ("\n Co-authored-by: %s\n Co-committed-by: %s\n " , sig .String (), sig .String ())
40- }
41- if err := git .NewCommand (ctx , "commit" ).
42- AddArguments (ctx .signArg ... ).
43- AddOptionFormat ("--author='%s <%s>'" , sig .Name , sig .Email ).
44- AddOptionFormat ("--message=%s" , message ).
45- Run (ctx .RunOpts ()); err != nil {
46- log .Error ("git commit %-v: %v\n %s\n %s" , ctx .pr , err , ctx .outbuf .String (), ctx .errbuf .String ())
47- return fmt .Errorf ("git commit [%s:%s -> %s:%s]: %w\n %s\n %s" , ctx .pr .HeadRepo .FullName (), ctx .pr .HeadBranch , ctx .pr .BaseRepo .FullName (), ctx .pr .BaseBranch , err , ctx .outbuf .String (), ctx .errbuf .String ())
48- }
38+ cmdCommit .AddOptionFormat ("-S%s" , ctx .signKeyID )
39+ }
40+ if err := cmdCommit .Run (ctx .RunOpts ()); err != nil {
41+ log .Error ("git commit %-v: %v\n %s\n %s" , ctx .pr , err , ctx .outbuf .String (), ctx .errbuf .String ())
42+ return fmt .Errorf ("git commit [%s:%s -> %s:%s]: %w\n %s\n %s" , ctx .pr .HeadRepo .FullName (), ctx .pr .HeadBranch , ctx .pr .BaseRepo .FullName (), ctx .pr .BaseBranch , err , ctx .outbuf .String (), ctx .errbuf .String ())
4943 }
5044 ctx .outbuf .Reset ()
5145 ctx .errbuf .Reset ()
0 commit comments