Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/gitaly-git2go/resolve_conflicts.go')
-rw-r--r--cmd/gitaly-git2go/resolve_conflicts.go27
1 files changed, 27 insertions, 0 deletions
diff --git a/cmd/gitaly-git2go/resolve_conflicts.go b/cmd/gitaly-git2go/resolve_conflicts.go
index 3c8bf6eed..ba1d516cb 100644
--- a/cmd/gitaly-git2go/resolve_conflicts.go
+++ b/cmd/gitaly-git2go/resolve_conflicts.go
@@ -7,6 +7,7 @@ import (
"errors"
"flag"
"fmt"
+ "os"
"strings"
"time"
@@ -149,6 +150,32 @@ func (cmd resolveSubcommand) Run() error {
)
}
+ tree, err := index.WriteTreeTo(repo)
+ if err != nil {
+ return err
+ }
+
+ committer := git.Signature{
+ Name: sanitizeSignatureInfo(request.AuthorName),
+ Email: sanitizeSignatureInfo(request.AuthorMail),
+ When: request.AuthorDate,
+ }
+
+ commit, err := repo.CreateCommitFromIds("", &committer, &committer, request.Message, tree, ours.Id(), theirs.Id())
+ if err != nil {
+ return fmt.Errorf("could not create resolve conflict commit: %w", err)
+ }
+
+ response := git2go.ResolveResult{
+ git2go.MergeResult{
+ CommitID: commit.String(),
+ },
+ }
+
+ if err := response.SerializeTo(os.Stdout); err != nil {
+ return err
+ }
+
return nil
}