File tree Expand file tree Collapse file tree 6 files changed +62
-0
lines changed Expand file tree Collapse file tree 6 files changed +62
-0
lines changed Original file line number Diff line number Diff line change @@ -169,6 +169,32 @@ public IssueTrackerRule AddJiraIssueTracker()
169
169
return rule ;
170
170
}
171
171
172
+ public IssueTrackerRule AddGitLabIssueTracker ( string repoURL )
173
+ {
174
+ var rule = new IssueTrackerRule ( )
175
+ {
176
+ Name = "GitLab ISSUE" ,
177
+ RegexString = "#(\\ d+)" ,
178
+ URLTemplate = string . IsNullOrEmpty ( repoURL ) ? "https://gitlab.com/username/repository/-/issues/$1" : $ "{ repoURL } /-/issues/$1",
179
+ } ;
180
+
181
+ IssueTrackerRules . Add ( rule ) ;
182
+ return rule ;
183
+ }
184
+
185
+ public IssueTrackerRule AddGitLabMergeRequestTracker ( string repoURL )
186
+ {
187
+ var rule = new IssueTrackerRule ( )
188
+ {
189
+ Name = "GitLab MR" ,
190
+ RegexString = "!(\\ d+)" ,
191
+ URLTemplate = string . IsNullOrEmpty ( repoURL ) ? "https://gitlab.com/username/repository/-/merge_requests/$1" : $ "{ repoURL } /-/merge_requests/$1",
192
+ } ;
193
+
194
+ IssueTrackerRules . Add ( rule ) ;
195
+ return rule ;
196
+ }
197
+
172
198
public void RemoveIssueTracker ( IssueTrackerRule rule )
173
199
{
174
200
if ( rule != null )
Original file line number Diff line number Diff line change 147
147
<x : String x : Key =" Text.Configure.IssueTracker" xml : space =" preserve" >ISSUE TRACKER</x : String >
148
148
<x : String x : Key =" Text.Configure.IssueTracker.AddSampleGithub" xml : space =" preserve" >Add Sample Github Rule</x : String >
149
149
<x : String x : Key =" Text.Configure.IssueTracker.AddSampleJira" xml : space =" preserve" >Add Sample Jira Rule</x : String >
150
+ <x : String x : Key =" Text.Configure.IssueTracker.AddSampleGitLabIssue" xml : space =" preserve" >Add Sample GitLab Issue Rule</x : String >
151
+ <x : String x : Key =" Text.Configure.IssueTracker.AddSampleGitLabMergeRequest" xml : space =" preserve" >Add Sample GitLab Merge Request Rule</x : String >
150
152
<x : String x : Key =" Text.Configure.IssueTracker.NewRule" xml : space =" preserve" >New Rule</x : String >
151
153
<x : String x : Key =" Text.Configure.IssueTracker.Regex" xml : space =" preserve" >Issue Regex Expression:</x : String >
152
154
<x : String x : Key =" Text.Configure.IssueTracker.RuleName" xml : space =" preserve" >Rule Name:</x : String >
Original file line number Diff line number Diff line change 150
150
<x : String x : Key =" Text.Configure.IssueTracker" xml : space =" preserve" >ISSUE追踪</x : String >
151
151
<x : String x : Key =" Text.Configure.IssueTracker.AddSampleGithub" xml : space =" preserve" >新增匹配Github Issue规则</x : String >
152
152
<x : String x : Key =" Text.Configure.IssueTracker.AddSampleJira" xml : space =" preserve" >新增匹配Jira规则</x : String >
153
+ <x : String x : Key =" Text.Configure.IssueTracker.AddSampleGitLabIssue" xml : space =" preserve" >新增匹配GitLab议题规则</x : String >
154
+ <x : String x : Key =" Text.Configure.IssueTracker.AddSampleGitLabMergeRequest" xml : space =" preserve" >新增匹配GitLab合并请求规则</x : String >
153
155
<x : String x : Key =" Text.Configure.IssueTracker.NewRule" xml : space =" preserve" >新增自定义规则</x : String >
154
156
<x : String x : Key =" Text.Configure.IssueTracker.Regex" xml : space =" preserve" >匹配ISSUE的正则表达式 :</x : String >
155
157
<x : String x : Key =" Text.Configure.IssueTracker.RuleName" xml : space =" preserve" >规则名 :</x : String >
Original file line number Diff line number Diff line change 150
150
<x : String x : Key =" Text.Configure.IssueTracker" xml : space =" preserve" >Issue 追蹤</x : String >
151
151
<x : String x : Key =" Text.Configure.IssueTracker.AddSampleGithub" xml : space =" preserve" >新增符合 GitHub Issue 規則</x : String >
152
152
<x : String x : Key =" Text.Configure.IssueTracker.AddSampleJira" xml : space =" preserve" >新增符合 Jira 規則</x : String >
153
+ <x : String x : Key =" Text.Configure.IssueTracker.AddSampleGitLabIssue" xml : space =" preserve" >新增符合 GitLab 議題規則</x : String >
154
+ <x : String x : Key =" Text.Configure.IssueTracker.AddSampleGitLabMergeRequest" xml : space =" preserve" >新增符合 GitLab 合併請求規則</x : String >
153
155
<x : String x : Key =" Text.Configure.IssueTracker.NewRule" xml : space =" preserve" >新增自訂規則</x : String >
154
156
<x : String x : Key =" Text.Configure.IssueTracker.Regex" xml : space =" preserve" >符合 Issue 的正則表達式:</x : String >
155
157
<x : String x : Key =" Text.Configure.IssueTracker.RuleName" xml : space =" preserve" >規則名稱:</x : String >
Original file line number Diff line number Diff line change @@ -172,6 +172,34 @@ public void AddSampleJiraIssueTracker()
172
172
SelectedIssueTrackerRule = _repo . Settings . AddJiraIssueTracker ( ) ;
173
173
}
174
174
175
+ public void AddSampleGitLabIssueTracker ( )
176
+ {
177
+ foreach ( var remote in _repo . Remotes )
178
+ {
179
+ if ( remote . TryGetVisitURL ( out string url ) )
180
+ {
181
+ SelectedIssueTrackerRule = _repo . Settings . AddGitLabIssueTracker ( url ) ;
182
+ return ;
183
+ }
184
+ }
185
+
186
+ SelectedIssueTrackerRule = _repo . Settings . AddGitLabIssueTracker ( null ) ;
187
+ }
188
+
189
+ public void AddSampleGitLabMergeRequestTracker ( )
190
+ {
191
+ foreach ( var remote in _repo . Remotes )
192
+ {
193
+ if ( remote . TryGetVisitURL ( out string url ) )
194
+ {
195
+ SelectedIssueTrackerRule = _repo . Settings . AddGitLabMergeRequestTracker ( url ) ;
196
+ return ;
197
+ }
198
+ }
199
+
200
+ SelectedIssueTrackerRule = _repo . Settings . AddGitLabMergeRequestTracker ( null ) ;
201
+ }
202
+
175
203
public void NewIssueTracker ( )
176
204
{
177
205
SelectedIssueTrackerRule = _repo . Settings . AddNewIssueTracker ( ) ;
Original file line number Diff line number Diff line change 287
287
<MenuItem Header =" -" />
288
288
<MenuItem Header =" {DynamicResource Text.Configure.IssueTracker.AddSampleGithub}" Command =" {Binding AddSampleGithubIssueTracker}" />
289
289
<MenuItem Header =" {DynamicResource Text.Configure.IssueTracker.AddSampleJira}" Command =" {Binding AddSampleJiraIssueTracker}" />
290
+ <MenuItem Header =" {DynamicResource Text.Configure.IssueTracker.AddSampleGitLabIssue}" Command =" {Binding AddSampleGitLabIssueTracker}" />
291
+ <MenuItem Header =" {DynamicResource Text.Configure.IssueTracker.AddSampleGitLabMergeRequest}" Command =" {Binding AddSampleGitLabMergeRequestTracker}" />
290
292
</MenuFlyout >
291
293
</Button .Flyout>
292
294
<Path Width =" 14" Height =" 14" Data =" {StaticResource Icons.Plus}" />
You can’t perform that action at this time.
0 commit comments