mirror of
https://github.com/sourcegit-scm/sourcegit.git
synced 2024-10-31 13:03:20 -07:00
Add option --ignore-whitespace
supports for git apply
command
This commit is contained in:
parent
95030c334f
commit
5df377e48e
3 changed files with 23 additions and 6 deletions
|
@ -502,11 +502,16 @@ namespace SourceGit.Git {
|
|||
/// Apply patch.
|
||||
/// </summary>
|
||||
/// <param name="patch"></param>
|
||||
/// <param name="ignoreSpaceChanges"></param>
|
||||
/// <param name="whitespaceMode"></param>
|
||||
public void Apply(string patch, string whitespaceMode) {
|
||||
public void Apply(string patch, bool ignoreSpaceChanges, string whitespaceMode) {
|
||||
isWatcherDisabled = true;
|
||||
|
||||
var errs = RunCommand($"apply --whitespace={whitespaceMode} \"{patch}\"", null);
|
||||
var args = "apply ";
|
||||
if (ignoreSpaceChanges) args += "--ignore-whitespace ";
|
||||
else args += $"--whitespace={whitespaceMode} ";
|
||||
|
||||
var errs = RunCommand($"{args} \"{patch}\"", null);
|
||||
if (errs != null) {
|
||||
App.RaiseError(errs);
|
||||
} else {
|
||||
|
|
|
@ -5,14 +5,16 @@
|
|||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:helpers="clr-namespace:SourceGit.Helpers"
|
||||
xmlns:converters="clr-namespace:SourceGit.Converters"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="192" d:DesignWidth="500" Height="160" Width="500">
|
||||
Height="192" Width="500">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="32"/>
|
||||
<RowDefinition Height="16"/>
|
||||
<RowDefinition Height="32"/>
|
||||
<RowDefinition Height="32"/>
|
||||
<RowDefinition Height="32"/>
|
||||
<RowDefinition Height="16"/>
|
||||
<RowDefinition Height="32"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
@ -22,6 +24,10 @@
|
|||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Grid.Resources>
|
||||
<converters:InverseBool x:Key="InverseBool"/>
|
||||
</Grid.Resources>
|
||||
|
||||
<Label Grid.Row="0" Grid.ColumnSpan="2" FontWeight="DemiBold" FontSize="18" Content="Apply Patch"/>
|
||||
|
||||
<Label Grid.Row="2" Grid.Column="0" HorizontalAlignment="Right" Content="Patch File :"/>
|
||||
|
@ -51,7 +57,7 @@
|
|||
</Grid>
|
||||
|
||||
<Label Grid.Row="3" Grid.Column="0" HorizontalAlignment="Right" Content="Whitespace :"/>
|
||||
<ComboBox x:Name="combWhitespaceOptions" Grid.Row="3" Grid.Column="1" VerticalAlignment="Center">
|
||||
<ComboBox x:Name="combWhitespaceOptions" Grid.Row="3" Grid.Column="1" VerticalAlignment="Center" IsEnabled="{Binding ElementName=chkIgnoreWhitespace, Path=IsChecked, Converter={StaticResource InverseBool}}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal" Height="20">
|
||||
|
@ -62,7 +68,12 @@
|
|||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
|
||||
<Grid Grid.Row="5" Grid.ColumnSpan="2">
|
||||
<CheckBox Grid.Row="4" Grid.Column="1"
|
||||
x:Name="chkIgnoreWhitespace"
|
||||
IsChecked="True"
|
||||
Content="Ignore whitespace changes"/>
|
||||
|
||||
<Grid Grid.Row="6" Grid.ColumnSpan="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="80"/>
|
||||
|
|
|
@ -85,7 +85,8 @@ namespace SourceGit.UI {
|
|||
PopupManager.Lock();
|
||||
|
||||
var mode = combWhitespaceOptions.SelectedItem as WhitespaceOption;
|
||||
await Task.Run(() => repo.Apply(PatchFile, mode.Arg));
|
||||
var ignoreSpaceChanges = chkIgnoreWhitespace.IsChecked == true;
|
||||
await Task.Run(() => repo.Apply(PatchFile, ignoreSpaceChanges, mode.Arg));
|
||||
|
||||
PopupManager.Close(true);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue