diff --git a/src/Commands/Merge.cs b/src/Commands/Merge.cs index b08377b9..32898593 100644 --- a/src/Commands/Merge.cs +++ b/src/Commands/Merge.cs @@ -5,11 +5,20 @@ namespace SourceGit.Commands { public class Merge : Command { - public Merge(string repo, string source, string mode) + public Merge(string repo, string source, string mode, bool edit) { WorkingDirectory = repo; Context = repo; - Args = $"merge --progress {source} {mode}"; + Editor = EditorType.CoreEditor; + + var builder = new StringBuilder(); + builder.Append("merge --progress "); + builder.Append(edit ? "--edit " : "--no-edit "); + builder.Append(source); + builder.Append(' '); + builder.Append(mode); + + Args = builder.ToString(); } public Merge(string repo, List targets, bool autoCommit, string strategy) diff --git a/src/Resources/Locales/en_US.axaml b/src/Resources/Locales/en_US.axaml index ee035551..f0ad4b18 100644 --- a/src/Resources/Locales/en_US.axaml +++ b/src/Resources/Locales/en_US.axaml @@ -442,6 +442,7 @@ Workspaces Pages Merge Branch + Customize merge message Into: Merge Option: Source: diff --git a/src/Resources/Locales/zh_CN.axaml b/src/Resources/Locales/zh_CN.axaml index 2a117fb8..f8fa8d90 100644 --- a/src/Resources/Locales/zh_CN.axaml +++ b/src/Resources/Locales/zh_CN.axaml @@ -446,6 +446,7 @@ 工作区列表 页面列表 合并分支 + 编辑合并信息 目标分支 : 合并方式 : 合并目标 : diff --git a/src/Resources/Locales/zh_TW.axaml b/src/Resources/Locales/zh_TW.axaml index 29a5346d..a76f4f3a 100644 --- a/src/Resources/Locales/zh_TW.axaml +++ b/src/Resources/Locales/zh_TW.axaml @@ -446,6 +446,7 @@ 工作區列表 頁面列表 合併分支 + 編輯合併訊息 目標分支: 合併方式: 合併來源: diff --git a/src/ViewModels/Merge.cs b/src/ViewModels/Merge.cs index eb54418c..d7b6a29c 100644 --- a/src/ViewModels/Merge.cs +++ b/src/ViewModels/Merge.cs @@ -21,6 +21,12 @@ namespace SourceGit.ViewModels set; } + public bool Edit + { + get; + set; + } = false; + public Merge(Repository repo, Models.Branch source, string into, bool forceFastForward) { _repo = repo; @@ -62,7 +68,7 @@ namespace SourceGit.ViewModels return Task.Run(() => { - new Commands.Merge(_repo.FullPath, _sourceName, Mode.Arg).Use(log).Exec(); + new Commands.Merge(_repo.FullPath, _sourceName, Mode.Arg, Edit).Use(log).Exec(); log.Complete(); var head = new Commands.QueryRevisionByRefName(_repo.FullPath, "HEAD").Result(); diff --git a/src/Views/Merge.axaml b/src/Views/Merge.axaml index 33d07f02..d4ba5d70 100644 --- a/src/Views/Merge.axaml +++ b/src/Views/Merge.axaml @@ -12,7 +12,7 @@ - + + +