/
default-scm.ts
41 lines (32 loc) · 1.23 KB
/
default-scm.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import * as git from '../../util/git';
import type { CommitFilesConfig, CommitSha } from '../../util/git/types';
import type { PlatformScm } from './types';
export class DefaultGitScm implements PlatformScm {
branchExists(branchName: string): Promise<boolean> {
return Promise.resolve(git.branchExists(branchName));
}
commitAndPush(commitConfig: CommitFilesConfig): Promise<CommitSha | null> {
return git.commitFiles(commitConfig);
}
deleteBranch(branchName: string): Promise<void> {
return git.deleteBranch(branchName);
}
getBranchCommit(branchName: string): Promise<CommitSha | null> {
return Promise.resolve(git.getBranchCommit(branchName));
}
isBranchBehindBase(branchName: string, baseBranch: string): Promise<boolean> {
return git.isBranchBehindBase(branchName, baseBranch);
}
isBranchConflicted(baseBranch: string, branch: string): Promise<boolean> {
return git.isBranchConflicted(baseBranch, branch);
}
isBranchModified(branchName: string): Promise<boolean> {
return git.isBranchModified(branchName);
}
getFileList(): Promise<string[]> {
return git.getFileList();
}
checkoutBranch(branchName: string): Promise<CommitSha> {
return git.checkoutBranch(branchName);
}
}