@@ -14,8 +14,8 @@ import (
14
14
15
15
// doMergeStyleSquash squashes the tracking branch on the current HEAD (=base)
16
16
func 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 {
19
19
log .Error ("%-v Unable to merge --squash tracking into base: %v" , ctx .pr , err )
20
20
return err
21
21
}
@@ -25,27 +25,21 @@ func doMergeStyleSquash(ctx *mergeContext, message string) error {
25
25
return fmt .Errorf ("LoadPoster: %w" , err )
26
26
}
27
27
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" )
36
37
} 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 ())
49
43
}
50
44
ctx .outbuf .Reset ()
51
45
ctx .errbuf .Reset ()
0 commit comments