mirror of
https://github.com/sourcegit-scm/sourcegit
synced 2025-06-21 10:25:00 +00:00
feature: supports to customize merge message (--edit
) (#1421)
Signed-off-by: leo <longshuang@msn.cn>
This commit is contained in:
parent
a8da8c09ac
commit
90310a704d
6 changed files with 28 additions and 4 deletions
|
@ -5,11 +5,20 @@ namespace SourceGit.Commands
|
||||||
{
|
{
|
||||||
public class Merge : Command
|
public class Merge : Command
|
||||||
{
|
{
|
||||||
public Merge(string repo, string source, string mode)
|
public Merge(string repo, string source, string mode, bool edit)
|
||||||
{
|
{
|
||||||
WorkingDirectory = repo;
|
WorkingDirectory = repo;
|
||||||
Context = 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<string> targets, bool autoCommit, string strategy)
|
public Merge(string repo, List<string> targets, bool autoCommit, string strategy)
|
||||||
|
|
|
@ -442,6 +442,7 @@
|
||||||
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">Workspaces</x:String>
|
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">Workspaces</x:String>
|
||||||
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">Pages</x:String>
|
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">Pages</x:String>
|
||||||
<x:String x:Key="Text.Merge" xml:space="preserve">Merge Branch</x:String>
|
<x:String x:Key="Text.Merge" xml:space="preserve">Merge Branch</x:String>
|
||||||
|
<x:String x:Key="Text.Merge.Edit" xml:space="preserve">Customize merge message</x:String>
|
||||||
<x:String x:Key="Text.Merge.Into" xml:space="preserve">Into:</x:String>
|
<x:String x:Key="Text.Merge.Into" xml:space="preserve">Into:</x:String>
|
||||||
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">Merge Option:</x:String>
|
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">Merge Option:</x:String>
|
||||||
<x:String x:Key="Text.Merge.Source" xml:space="preserve">Source:</x:String>
|
<x:String x:Key="Text.Merge.Source" xml:space="preserve">Source:</x:String>
|
||||||
|
|
|
@ -446,6 +446,7 @@
|
||||||
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">工作区列表</x:String>
|
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">工作区列表</x:String>
|
||||||
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">页面列表</x:String>
|
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">页面列表</x:String>
|
||||||
<x:String x:Key="Text.Merge" xml:space="preserve">合并分支</x:String>
|
<x:String x:Key="Text.Merge" xml:space="preserve">合并分支</x:String>
|
||||||
|
<x:String x:Key="Text.Merge.Edit" xml:space="preserve">编辑合并信息</x:String>
|
||||||
<x:String x:Key="Text.Merge.Into" xml:space="preserve">目标分支 :</x:String>
|
<x:String x:Key="Text.Merge.Into" xml:space="preserve">目标分支 :</x:String>
|
||||||
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">合并方式 :</x:String>
|
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">合并方式 :</x:String>
|
||||||
<x:String x:Key="Text.Merge.Source" xml:space="preserve">合并目标 :</x:String>
|
<x:String x:Key="Text.Merge.Source" xml:space="preserve">合并目标 :</x:String>
|
||||||
|
|
|
@ -446,6 +446,7 @@
|
||||||
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">工作區列表</x:String>
|
<x:String x:Key="Text.Launcher.Workspaces" xml:space="preserve">工作區列表</x:String>
|
||||||
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">頁面列表</x:String>
|
<x:String x:Key="Text.Launcher.Pages" xml:space="preserve">頁面列表</x:String>
|
||||||
<x:String x:Key="Text.Merge" xml:space="preserve">合併分支</x:String>
|
<x:String x:Key="Text.Merge" xml:space="preserve">合併分支</x:String>
|
||||||
|
<x:String x:Key="Text.Merge.Edit" xml:space="preserve">編輯合併訊息</x:String>
|
||||||
<x:String x:Key="Text.Merge.Into" xml:space="preserve">目標分支:</x:String>
|
<x:String x:Key="Text.Merge.Into" xml:space="preserve">目標分支:</x:String>
|
||||||
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">合併方式:</x:String>
|
<x:String x:Key="Text.Merge.Mode" xml:space="preserve">合併方式:</x:String>
|
||||||
<x:String x:Key="Text.Merge.Source" xml:space="preserve">合併來源:</x:String>
|
<x:String x:Key="Text.Merge.Source" xml:space="preserve">合併來源:</x:String>
|
||||||
|
|
|
@ -21,6 +21,12 @@ namespace SourceGit.ViewModels
|
||||||
set;
|
set;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool Edit
|
||||||
|
{
|
||||||
|
get;
|
||||||
|
set;
|
||||||
|
} = false;
|
||||||
|
|
||||||
public Merge(Repository repo, Models.Branch source, string into, bool forceFastForward)
|
public Merge(Repository repo, Models.Branch source, string into, bool forceFastForward)
|
||||||
{
|
{
|
||||||
_repo = repo;
|
_repo = repo;
|
||||||
|
@ -62,7 +68,7 @@ namespace SourceGit.ViewModels
|
||||||
|
|
||||||
return Task.Run(() =>
|
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();
|
log.Complete();
|
||||||
|
|
||||||
var head = new Commands.QueryRevisionByRefName(_repo.FullPath, "HEAD").Result();
|
var head = new Commands.QueryRevisionByRefName(_repo.FullPath, "HEAD").Result();
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
<TextBlock FontSize="18"
|
<TextBlock FontSize="18"
|
||||||
Classes="bold"
|
Classes="bold"
|
||||||
Text="{DynamicResource Text.Merge}"/>
|
Text="{DynamicResource Text.Merge}"/>
|
||||||
<Grid Margin="0,16,0,0" RowDefinitions="32,32,32" ColumnDefinitions="130,*">
|
<Grid Margin="0,16,0,0" RowDefinitions="32,32,32,32" ColumnDefinitions="130,*">
|
||||||
<TextBlock Grid.Row="0" Grid.Column="0"
|
<TextBlock Grid.Row="0" Grid.Column="0"
|
||||||
HorizontalAlignment="Right" VerticalAlignment="Center"
|
HorizontalAlignment="Right" VerticalAlignment="Center"
|
||||||
Margin="0,0,8,0"
|
Margin="0,0,8,0"
|
||||||
|
@ -87,6 +87,12 @@
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ComboBox.SelectionBoxItemTemplate>
|
</ComboBox.SelectionBoxItemTemplate>
|
||||||
</ComboBox>
|
</ComboBox>
|
||||||
|
|
||||||
|
<CheckBox Grid.Row="3" Grid.Column="1"
|
||||||
|
Height="32"
|
||||||
|
Content="{DynamicResource Text.Merge.Edit}"
|
||||||
|
IsChecked="{Binding Edit, Mode=TwoWay}"
|
||||||
|
ToolTip.Tip="--edit"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue