mirror of
https://github.com/microsoft/vscode.git
synced 2026-05-01 22:12:26 +01:00
more submodule support, diff colorization
This commit is contained in:
@@ -265,19 +265,19 @@ export class Model {
|
||||
|
||||
getRepository(sourceControl: SourceControl): Repository | undefined;
|
||||
getRepository(resourceGroup: SourceControlResourceGroup): Repository | undefined;
|
||||
getRepository(path: string): Repository | undefined;
|
||||
getRepository(resource: Uri): Repository | undefined;
|
||||
getRepository(hint: any): Repository | undefined {
|
||||
const liveRepository = this.getOpenRepository(hint);
|
||||
getRepository(path: string, possibleSubmoduleRoot?: boolean): Repository | undefined;
|
||||
getRepository(resource: Uri, possibleSubmoduleRoot?: boolean): Repository | undefined;
|
||||
getRepository(hint: any, possibleSubmoduleRoot?: boolean): Repository | undefined {
|
||||
const liveRepository = this.getOpenRepository(hint, possibleSubmoduleRoot);
|
||||
return liveRepository && liveRepository.repository;
|
||||
}
|
||||
|
||||
private getOpenRepository(repository: Repository): OpenRepository | undefined;
|
||||
private getOpenRepository(sourceControl: SourceControl): OpenRepository | undefined;
|
||||
private getOpenRepository(resourceGroup: SourceControlResourceGroup): OpenRepository | undefined;
|
||||
private getOpenRepository(path: string): OpenRepository | undefined;
|
||||
private getOpenRepository(resource: Uri): OpenRepository | undefined;
|
||||
private getOpenRepository(hint: any): OpenRepository | undefined {
|
||||
private getOpenRepository(path: string, possibleSubmoduleRoot?: boolean): OpenRepository | undefined;
|
||||
private getOpenRepository(resource: Uri, possibleSubmoduleRoot?: boolean): OpenRepository | undefined;
|
||||
private getOpenRepository(hint: any, possibleSubmoduleRoot?: boolean): OpenRepository | undefined {
|
||||
if (!hint) {
|
||||
return undefined;
|
||||
}
|
||||
@@ -295,15 +295,21 @@ export class Model {
|
||||
|
||||
outer:
|
||||
for (const liveRepository of this.openRepositories.sort((a, b) => b.repository.root.length - a.repository.root.length)) {
|
||||
if (possibleSubmoduleRoot && liveRepository.repository.root === resourcePath) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!isDescendant(liveRepository.repository.root, resourcePath)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
for (const submodule of liveRepository.repository.submodules) {
|
||||
const submoduleRoot = path.join(liveRepository.repository.root, submodule.path);
|
||||
if (!possibleSubmoduleRoot) {
|
||||
for (const submodule of liveRepository.repository.submodules) {
|
||||
const submoduleRoot = path.join(liveRepository.repository.root, submodule.path);
|
||||
|
||||
if (isDescendant(submoduleRoot, resourcePath)) {
|
||||
continue outer;
|
||||
if (isDescendant(submoduleRoot, resourcePath)) {
|
||||
continue outer;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user