Skip to content

Commit 90310a7

Browse files
committed
feature: supports to customize merge message (--edit) (#1421)
Signed-off-by: leo <[email protected]>
1 parent a8da8c0 commit 90310a7

File tree

6 files changed

+28
-4
lines changed

6 files changed

+28
-4
lines changed

src/Commands/Merge.cs

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,20 @@ namespace SourceGit.Commands
55
{
66
public class Merge : Command
77
{
8-
public Merge(string repo, string source, string mode)
8+
public Merge(string repo, string source, string mode, bool edit)
99
{
1010
WorkingDirectory = repo;
1111
Context = repo;
12-
Args = $"merge --progress {source} {mode}";
12+
Editor = EditorType.CoreEditor;
13+
14+
var builder = new StringBuilder();
15+
builder.Append("merge --progress ");
16+
builder.Append(edit ? "--edit " : "--no-edit ");
17+
builder.Append(source);
18+
builder.Append(' ');
19+
builder.Append(mode);
20+
21+
Args = builder.ToString();
1322
}
1423

1524
public Merge(string repo, List<string> targets, bool autoCommit, string strategy)

src/Resources/Locales/en_US.axaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -442,6 +442,7 @@
442442
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">Workspaces</x:String>
443443
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">Pages</x:String>
444444
<x:String x:Key="Text.Merge" xml:space="preserve">Merge Branch</x:String>
445+
<x:String x:Key="Text.Merge.Edit" xml:space="preserve">Customize merge message</x:String>
445446
<x:String x:Key="Text.Merge.Into" xml:space="preserve">Into:</x:String>
446447
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">Merge Option:</x:String>
447448
<x:String x:Key="Text.Merge.Source" xml:space="preserve">Source:</x:String>

src/Resources/Locales/zh_CN.axaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -446,6 +446,7 @@
446446
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">工作区列表</x:String>
447447
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">页面列表</x:String>
448448
<x:String x:Key="Text.Merge" xml:space="preserve">合并分支</x:String>
449+
<x:String x:Key="Text.Merge.Edit" xml:space="preserve">编辑合并信息</x:String>
449450
<x:String x:Key="Text.Merge.Into" xml:space="preserve">目标分支 :</x:String>
450451
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">合并方式 :</x:String>
451452
<x:String x:Key="Text.Merge.Source" xml:space="preserve">合并目标 :</x:String>

src/Resources/Locales/zh_TW.axaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -446,6 +446,7 @@
446446
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">工作區列表</x:String>
447447
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">頁面列表</x:String>
448448
<x:String x:Key="Text.Merge" xml:space="preserve">合併分支</x:String>
449+
<x:String x:Key="Text.Merge.Edit" xml:space="preserve">編輯合併訊息</x:String>
449450
<x:String x:Key="Text.Merge.Into" xml:space="preserve">目標分支:</x:String>
450451
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">合併方式:</x:String>
451452
<x:String x:Key="Text.Merge.Source" xml:space="preserve">合併來源:</x:String>

src/ViewModels/Merge.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,12 @@ public Models.MergeMode Mode
2121
set;
2222
}
2323

24+
public bool Edit
25+
{
26+
get;
27+
set;
28+
} = false;
29+
2430
public Merge(Repository repo, Models.Branch source, string into, bool forceFastForward)
2531
{
2632
_repo = repo;
@@ -62,7 +68,7 @@ public override Task<bool> Sure()
6268

6369
return Task.Run(() =>
6470
{
65-
new Commands.Merge(_repo.FullPath, _sourceName, Mode.Arg).Use(log).Exec();
71+
new Commands.Merge(_repo.FullPath, _sourceName, Mode.Arg, Edit).Use(log).Exec();
6672
log.Complete();
6773

6874
var head = new Commands.QueryRevisionByRefName(_repo.FullPath, "HEAD").Result();

src/Views/Merge.axaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
<TextBlock FontSize="18"
1313
Classes="bold"
1414
Text="{DynamicResource Text.Merge}"/>
15-
<Grid Margin="0,16,0,0" RowDefinitions="32,32,32" ColumnDefinitions="130,*">
15+
<Grid Margin="0,16,0,0" RowDefinitions="32,32,32,32" ColumnDefinitions="130,*">
1616
<TextBlock Grid.Row="0" Grid.Column="0"
1717
HorizontalAlignment="Right" VerticalAlignment="Center"
1818
Margin="0,0,8,0"
@@ -87,6 +87,12 @@
8787
</DataTemplate>
8888
</ComboBox.SelectionBoxItemTemplate>
8989
</ComboBox>
90+
91+
<CheckBox Grid.Row="3" Grid.Column="1"
92+
Height="32"
93+
Content="{DynamicResource Text.Merge.Edit}"
94+
IsChecked="{Binding Edit, Mode=TwoWay}"
95+
ToolTip.Tip="--edit"/>
9096
</Grid>
9197
</StackPanel>
9298
</UserControl>

0 commit comments

Comments
 (0)