mirror of
https://github.com/Microsoft/vscode
synced 2024-10-05 19:02:54 +00:00
Git - add missing error handler (#201160)
This commit is contained in:
parent
e7f0e028aa
commit
9098f756e8
|
@ -2543,7 +2543,8 @@ export class Repository {
|
|||
return branch;
|
||||
}
|
||||
|
||||
return Promise.reject<Branch>(new Error(`No such branch: ${name}`));
|
||||
this.logger.warn(`No such branch: ${name}.`);
|
||||
return Promise.reject<Branch>(new Error(`No such branch: ${name}.`));
|
||||
}
|
||||
|
||||
async getDefaultBranch(): Promise<Branch> {
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
import { Disposable, Event, EventEmitter, FileDecoration, FileDecorationProvider, SourceControlHistoryItem, SourceControlHistoryItemChange, SourceControlHistoryItemGroup, SourceControlHistoryOptions, SourceControlHistoryProvider, ThemeIcon, Uri, window, l10n } from 'vscode';
|
||||
import { Disposable, Event, EventEmitter, FileDecoration, FileDecorationProvider, SourceControlHistoryItem, SourceControlHistoryItemChange, SourceControlHistoryItemGroup, SourceControlHistoryOptions, SourceControlHistoryProvider, ThemeIcon, Uri, window, l10n, LogOutputChannel } from 'vscode';
|
||||
import { Repository, Resource } from './repository';
|
||||
import { IDisposable, filterEvent } from './util';
|
||||
import { toGitUri } from './uri';
|
||||
|
@ -33,7 +33,7 @@ export class GitHistoryProvider implements SourceControlHistoryProvider, FileDec
|
|||
|
||||
private disposables: Disposable[] = [];
|
||||
|
||||
constructor(protected readonly repository: Repository) {
|
||||
constructor(protected readonly repository: Repository, private readonly logger: LogOutputChannel) {
|
||||
this.disposables.push(repository.onDidRunGitStatus(this.onDidRunGitStatus, this));
|
||||
this.disposables.push(filterEvent(repository.onDidRunOperation, e => e.operation === Operation.Refresh)(() => this._onDidChangeCurrentHistoryItemGroup.fire()));
|
||||
|
||||
|
@ -157,19 +157,24 @@ export class GitHistoryProvider implements SourceControlHistoryProvider, FileDec
|
|||
}
|
||||
|
||||
// Branch base
|
||||
const branchBase = await this.repository.getBranchBase(historyItemGroupId);
|
||||
try {
|
||||
const branchBase = await this.repository.getBranchBase(historyItemGroupId);
|
||||
|
||||
if (branchBase?.name && branchBase?.type === RefType.Head) {
|
||||
return {
|
||||
id: `refs/heads/${branchBase.name}`,
|
||||
label: branchBase.name
|
||||
};
|
||||
if (branchBase?.name && branchBase?.type === RefType.Head) {
|
||||
return {
|
||||
id: `refs/heads/${branchBase.name}`,
|
||||
label: branchBase.name
|
||||
};
|
||||
}
|
||||
if (branchBase?.name && branchBase.remote && branchBase?.type === RefType.RemoteHead) {
|
||||
return {
|
||||
id: `refs/remotes/${branchBase.remote}/${branchBase.name}`,
|
||||
label: `${branchBase.remote}/${branchBase.name}`
|
||||
};
|
||||
}
|
||||
}
|
||||
if (branchBase?.name && branchBase.remote && branchBase?.type === RefType.RemoteHead) {
|
||||
return {
|
||||
id: `refs/remotes/${branchBase.remote}/${branchBase.name}`,
|
||||
label: `${branchBase.remote}/${branchBase.name}`
|
||||
};
|
||||
catch (err) {
|
||||
this.logger.error(`Failed to get branch base for '${historyItemGroupId}': ${err.message}`);
|
||||
}
|
||||
|
||||
return undefined;
|
||||
|
|
|
@ -850,7 +850,7 @@ export class Repository implements Disposable {
|
|||
|
||||
this._sourceControl.quickDiffProvider = this;
|
||||
|
||||
const historyProvider = new GitHistoryProvider(this);
|
||||
const historyProvider = new GitHistoryProvider(this, logger);
|
||||
this._sourceControl.historyProvider = historyProvider;
|
||||
this.disposables.push(historyProvider);
|
||||
|
||||
|
|
Loading…
Reference in a new issue