git: use different uris for quick diff

This commit is contained in:
Joao Moreno
2017-03-01 12:53:19 +01:00
parent 7f0f3103ee
commit 0ff45fcdf0
2 changed files with 9 additions and 2 deletions

View File

@@ -32,7 +32,8 @@ export class GitContentProvider {
constructor(private model: Model) {
this.disposables.push(
model.onDidChangeRepository(this.eventuallyFireChangeEvents, this),
workspace.registerTextDocumentContentProvider('git', this)
workspace.registerTextDocumentContentProvider('git', this),
workspace.registerTextDocumentContentProvider('git-original', this)
);
setInterval(() => this.cleanup(), FIVE_MINUTES);
@@ -52,6 +53,10 @@ export class GitContentProvider {
}
async provideTextDocumentContent(uri: Uri): Promise<string> {
if (uri.scheme === 'git-original') {
uri = new Uri().with({ scheme: 'git', path: uri.query });
}
let ref = uri.query;
if (ref === '~') {

View File

@@ -62,7 +62,9 @@ export class GitSCMProvider implements SCMProvider {
return;
}
return uri.with({ scheme: 'git' });
// As a mitigation for extensions like ESLint showing warnings and errors
// for git URIs, let's change the file extension of these uris to .git.
return new Uri().with({ scheme: 'git-original', query: uri.path, path: uri.path + '.git' });
}
dispose(): void {