Skip to content

Commit e784696

Browse files
committed
enhance: add a checkbox to toggle Initialize & update submodules after clone
Signed-off-by: leo <[email protected]>
1 parent 3af6012 commit e784696

File tree

5 files changed

+22
-5
lines changed

5 files changed

+22
-5
lines changed

src/Resources/Locales/en_US.axaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@
9797
<x:String x:Key="Text.Clone.LocalName" xml:space="preserve">Local Name:</x:String>
9898
<x:String x:Key="Text.Clone.LocalName.Placeholder" xml:space="preserve">Repository name. Optional.</x:String>
9999
<x:String x:Key="Text.Clone.ParentFolder" xml:space="preserve">Parent Folder:</x:String>
100+
<x:String x:Key="Text.Clone.RecurseSubmodules" xml:space="preserve">Initialize &amp; update submodules</x:String>
100101
<x:String x:Key="Text.Clone.RemoteURL" xml:space="preserve">Repository URL:</x:String>
101102
<x:String x:Key="Text.Close" xml:space="preserve">CLOSE</x:String>
102103
<x:String x:Key="Text.CodeEditor" xml:space="preserve">Editor</x:String>

src/Resources/Locales/zh_CN.axaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@
100100
<x:String x:Key="Text.Clone.LocalName" xml:space="preserve">本地仓库名 :</x:String>
101101
<x:String x:Key="Text.Clone.LocalName.Placeholder" xml:space="preserve">本地仓库目录的名字,选填。</x:String>
102102
<x:String x:Key="Text.Clone.ParentFolder" xml:space="preserve">父级目录 :</x:String>
103+
<x:String x:Key="Text.Clone.RecurseSubmodules" xml:space="preserve">初始化并更新子模块</x:String>
103104
<x:String x:Key="Text.Clone.RemoteURL" xml:space="preserve">远程仓库 :</x:String>
104105
<x:String x:Key="Text.Close" xml:space="preserve">关闭</x:String>
105106
<x:String x:Key="Text.CodeEditor" 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
@@ -100,6 +100,7 @@
100100
<x:String x:Key="Text.Clone.LocalName" xml:space="preserve">本機存放庫名稱:</x:String>
101101
<x:String x:Key="Text.Clone.LocalName.Placeholder" xml:space="preserve">本機存放庫目錄的名稱,選填。</x:String>
102102
<x:String x:Key="Text.Clone.ParentFolder" xml:space="preserve">父級目錄:</x:String>
103+
<x:String x:Key="Text.Clone.RecurseSubmodules" xml:space="preserve">初始化並複製子模組</x:String>
103104
<x:String x:Key="Text.Clone.RemoteURL" xml:space="preserve">遠端存放庫:</x:String>
104105
<x:String x:Key="Text.Close" xml:space="preserve">關閉</x:String>
105106
<x:String x:Key="Text.CodeEditor" xml:space="preserve">提交訊息編輯器</x:String>

src/ViewModels/Clone.cs

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,12 @@ public string ExtraArgs
5353
set => SetProperty(ref _extraArgs, value);
5454
}
5555

56+
public bool InitAndUpdateSubmodules
57+
{
58+
get;
59+
set;
60+
} = true;
61+
5662
public Clone(string pageId)
5763
{
5864
_pageId = pageId;
@@ -128,11 +134,14 @@ public override Task<bool> Sure()
128134
}
129135

130136
// individually update submodule (if any)
131-
var submoduleList = new Commands.QuerySubmodules(path).Result();
132-
foreach (var submodule in submoduleList)
137+
if (InitAndUpdateSubmodules)
133138
{
134-
var update = new Commands.Submodule(path);
135-
update.Update(submodule.Path, true, true, false, SetProgressDescription);
139+
var submoduleList = new Commands.QuerySubmodules(path).Result();
140+
foreach (var submodule in submoduleList)
141+
{
142+
var update = new Commands.Submodule(path);
143+
update.Update(submodule.Path, true, true, false, SetProgressDescription);
144+
}
136145
}
137146

138147
CallUIThread(() =>

src/Views/Clone.axaml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<StackPanel Orientation="Vertical" Margin="8,0,0,0">
1111
<TextBlock Classes="bold" FontSize="18" Text="{DynamicResource Text.Clone}"/>
1212

13-
<Grid Margin="8,16,0,0" RowDefinitions="32,Auto,32,32,32" ColumnDefinitions="Auto,*">
13+
<Grid Margin="8,16,0,0" RowDefinitions="32,Auto,32,32,32,32" ColumnDefinitions="Auto,*">
1414
<TextBlock Grid.Row="0" Grid.Column="0"
1515
HorizontalAlignment="Right"
1616
Margin="0,0,8,0"
@@ -75,6 +75,11 @@
7575
CornerRadius="3"
7676
Watermark="{DynamicResource Text.Clone.AdditionalParam.Placeholder}"
7777
Text="{Binding ExtraArgs, Mode=TwoWay}"/>
78+
79+
<CheckBox Grid.Row="5" Grid.Column="1"
80+
Content="{DynamicResource Text.Clone.RecurseSubmodules}"
81+
IsChecked="{Binding InitAndUpdateSubmodules, Mode=TwoWay}"
82+
ToolTip.Tip="--recurse-submodules"/>
7883
</Grid>
7984
</StackPanel>
8085
</UserControl>

0 commit comments

Comments
 (0)