@@ -157,7 +157,7 @@ export class Model implements IDisposable {
157
157
@debounce ( 500 )
158
158
private eventuallyScanPossibleSvnRepositories ( ) : void {
159
159
for ( const path of this . possibleSvnRepositoryPaths ) {
160
- this . tryOpenRepository ( path ) ;
160
+ this . tryOpenRepository ( path , 1 ) ;
161
161
}
162
162
163
163
this . possibleSvnRepositoryPaths . clear ( ) ;
@@ -176,6 +176,19 @@ export class Model implements IDisposable {
176
176
. forEach ( p => this . eventuallyScanPossibleSvnRepository ( p ) ) ;
177
177
}
178
178
179
+ private scanIgnored ( repository : Repository ) : void {
180
+ const shouldScan =
181
+ configuration . get < boolean > ( "detectIgnored" ) === true ;
182
+
183
+ if ( ! shouldScan ) {
184
+ return ;
185
+ }
186
+
187
+ repository . statusIgnored
188
+ . map ( r => path . join ( repository . workspaceRoot , r . path ) )
189
+ . forEach ( p => this . eventuallyScanPossibleSvnRepository ( p ) ) ;
190
+ }
191
+
179
192
private disable ( ) : void {
180
193
this . repositories . forEach ( repository => repository . dispose ( ) ) ;
181
194
this . openRepositories = [ ] ;
@@ -335,6 +348,15 @@ export class Model implements IDisposable {
335
348
return false ;
336
349
}
337
350
}
351
+ for ( const ignored of liveRepository . repository . statusIgnored ) {
352
+ const ignoredPath = path . join (
353
+ liveRepository . repository . workspaceRoot ,
354
+ ignored . path
355
+ ) ;
356
+ if ( isDescendant ( ignoredPath , hint . fsPath ) ) {
357
+ return false ;
358
+ }
359
+ }
338
360
339
361
return true ;
340
362
} ) ;
@@ -390,8 +412,10 @@ export class Model implements IDisposable {
390
412
391
413
const statusListener = repository . onDidChangeStatus ( ( ) => {
392
414
this . scanExternals ( repository ) ;
415
+ this . scanIgnored ( repository ) ;
393
416
} ) ;
394
417
this . scanExternals ( repository ) ;
418
+ this . scanIgnored ( repository ) ;
395
419
396
420
const dispose = ( ) => {
397
421
disappearListener . dispose ( ) ;
0 commit comments