@@ -20,6 +20,13 @@ class MergeMessage
20
20
static Regex parseRemoteTrackingMergeMessage = new Regex (
21
21
@"^Merge remote-tracking branch '(?<SourceBranch>.*)'( into (?<TargetBranch>.*))?" ,
22
22
RegexOptions . IgnoreCase | RegexOptions . Compiled ) ;
23
+ static Regex parseTfsMergeMessageEnglishUS = new Regex (
24
+ @"^Merge (?<SourceBranch>.*) to (?<TargetBranch>.*)" ,
25
+ RegexOptions . IgnoreCase | RegexOptions . Compiled ) ;
26
+ // Zusammengeführter PR \"9\": release/5.0.1 mit master mergen
27
+ static Regex parseTfsMergeMessageGermanDE = new Regex (
28
+ @"^Zusammengeführter PR ""(?<PullRequestNumber>\d*)""\: (?<SourceBranch>.*) mit (?<TargetBranch>.*) mergen" ,
29
+ RegexOptions . IgnoreCase | RegexOptions . Compiled ) ;
23
30
24
31
private string mergeMessage ;
25
32
@@ -86,12 +93,29 @@ private string ParseBranch()
86
93
}
87
94
88
95
match = parseRemoteTrackingMergeMessage . Match ( mergeMessage ) ;
89
- if ( match . Success ) {
96
+ if ( match . Success )
97
+ {
90
98
var from = match . Groups [ "SourceBranch" ] . Value ;
91
99
// TODO We could remove/separate the remote name at this point?
92
100
return from ;
93
101
}
94
102
103
+ match = parseTfsMergeMessageEnglishUS . Match ( mergeMessage ) ;
104
+ if ( match . Success )
105
+ {
106
+ IsMergedPullRequest = true ;
107
+ var from = match . Groups [ "SourceBranch" ] . Value ;
108
+ return from ;
109
+ }
110
+
111
+ match = parseTfsMergeMessageGermanDE . Match ( mergeMessage ) ;
112
+ if ( match . Success )
113
+ {
114
+ IsMergedPullRequest = true ;
115
+ var from = match . Groups [ "SourceBranch" ] . Value ;
116
+ return from ;
117
+ }
118
+
95
119
return "" ;
96
120
}
97
121
0 commit comments