feature: supports to add ignored file(s) locally (saved in $GIT_DIR/info/exclude) (#1447)

Signed-off-by: leo <longshuang@msn.cn>
This commit is contained in:
leo 2025-06-23 17:22:57 +08:00
parent 5b6e9805dd
commit b519ead5a1
No known key found for this signature in database
9 changed files with 168 additions and 29 deletions

View file

@ -0,0 +1,47 @@
<UserControl xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:m="using:SourceGit.Models"
xmlns:vm="using:SourceGit.ViewModels"
xmlns:v="using:SourceGit.Views"
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
x:Class="SourceGit.Views.AddToIgnore"
x:DataType="vm:AddToIgnore">
<StackPanel Orientation="Vertical" Margin="8,0">
<TextBlock FontSize="18"
Classes="bold"
Text="{DynamicResource Text.AddToIgnore}"/>
<Grid Margin="0,16,0,0" RowDefinitions="32,32" ColumnDefinitions="120,*">
<TextBlock Grid.Row="0" Grid.Column="0"
HorizontalAlignment="Right" VerticalAlignment="Center"
Margin="0,0,8,0"
Text="{DynamicResource Text.AddToIgnore.Pattern}"/>
<TextBox Grid.Row="0" Grid.Column="1"
Height="28"
CornerRadius="3"
Text="{Binding Pattern, Mode=TwoWay}"
v:AutoFocusBehaviour.IsEnabled="True"/>
<TextBlock Grid.Row="1" Grid.Column="0"
HorizontalAlignment="Right" VerticalAlignment="Center"
Margin="0,0,8,0"
Text="{DynamicResource Text.AddToIgnore.Storage}"/>
<ComboBox Grid.Row="1" Grid.Column="1"
Height="28" Padding="8,0"
VerticalAlignment="Center" HorizontalAlignment="Stretch"
ItemsSource="{Binding Source={x:Static m:GitIgnoreFile.Supported}}"
SelectedItem="{Binding StorageFile, Mode=TwoWay}">
<ComboBox.ItemTemplate>
<DataTemplate DataType="m:GitIgnoreFile">
<TextBlock VerticalAlignment="Center">
<Run Text="{Binding File, Mode=OneWay}"/>
<Run Text="•" Foreground="{DynamicResource Brush.FG2}"/>
<Run Text="{Binding Desc, Mode=OneWay}" Foreground="{DynamicResource Brush.FG2}"/>
</TextBlock>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
</StackPanel>
</UserControl>

View file

@ -0,0 +1,12 @@
using Avalonia.Controls;
namespace SourceGit.Views
{
public partial class AddToIgnore : UserControl
{
public AddToIgnore()
{
InitializeComponent();
}
}
}