Optimizes performance of git-log

This commit is contained in:
Eric Amodio
2017-02-18 17:17:08 -05:00
parent fc09e3a700
commit 4a88edd5ca
2 changed files with 4 additions and 3 deletions

View File

@@ -41,10 +41,11 @@ export default class DiffWithPreviousCommand extends EditorCommand {
}
}
const log = await this.git.getLogForFile(gitUri.fsPath, undefined, gitUri.repoPath, rangeOrLine as Range);
const sha = (commit && commit.sha) || gitUri.sha;
const log = await this.git.getLogForFile(gitUri.fsPath, undefined, gitUri.repoPath, rangeOrLine as Range, sha ? undefined : 2);
if (!log) return window.showWarningMessage(`Unable to open diff. File is probably not under source control`);
const sha = (commit && commit.sha) || gitUri.sha;
commit = (sha && log.commits.get(sha)) || Iterables.first(log.commits.values());
}
catch (ex) {

View File

@@ -27,7 +27,7 @@ export default class DiffWithWorkingCommand extends EditorCommand {
const gitUri = GitUri.fromUri(uri, this.git);
try {
const log = await this.git.getLogForFile(gitUri.fsPath, gitUri.sha, gitUri.repoPath);
const log = await this.git.getLogForFile(gitUri.fsPath, gitUri.sha, gitUri.repoPath, undefined, gitUri.sha ? undefined : 1);
if (!log) return window.showWarningMessage(`Unable to open diff. File is probably not under source control`);
commit = (gitUri.sha && log.commits.get(gitUri.sha)) || Iterables.first(log.commits.values());