backport
Version:
A CLI tool that automates the process of backporting commits
85 lines (84 loc) • 3.6 kB
TypeScript
import { ValidConfigOptions } from '../options/options';
import { CommitAuthor } from './author';
import { TargetPullRequest } from './sourceCommit/getPullRequestStates';
import { Commit } from './sourceCommit/parseSourceCommit';
export declare function getRemoteUrl({ repoName, accessToken, gitHostname }: ValidConfigOptions, repoOwner: string): string;
export declare function cloneRepo({ sourcePath, targetPath }: {
sourcePath: string;
targetPath: string;
}, onProgress: (progress: number) => void): Promise<void>;
export declare function getLocalConfigFileCommitDate({ cwd }: {
cwd: string;
}): Promise<number | undefined>;
export declare function isLocalConfigFileUntracked({ cwd }: {
cwd: string;
}): Promise<boolean | undefined>;
export declare function isLocalConfigFileModified({ cwd }: {
cwd: string;
}): Promise<boolean>;
export declare function getRepoInfoFromGitRemotes({ cwd }: {
cwd: string;
}): Promise<{
repoOwner: string;
repoName: string;
}[]>;
export declare function getGitProjectRootPath(dir: string): Promise<string | undefined>;
export declare function getIsCommitInBranch(options: ValidConfigOptions, commitSha: string): Promise<boolean>;
export declare function deleteRemote(options: ValidConfigOptions, remoteName: string): Promise<void>;
export declare function addRemote(options: ValidConfigOptions, remoteName: string): Promise<void>;
export declare function fetchBranch(options: ValidConfigOptions, branch: string): Promise<void>;
export declare function getIsMergeCommit(options: ValidConfigOptions, sha: string): Promise<boolean>;
export declare function getShasInMergeCommit(options: ValidConfigOptions, sha: string): Promise<string[]>;
export declare function cherrypick({ options, sha, mergedTargetPullRequest, commitAuthor, }: {
options: ValidConfigOptions;
sha: string;
mergedTargetPullRequest?: TargetPullRequest;
commitAuthor: CommitAuthor;
}): Promise<{
conflictingFiles: {
absolute: string;
relative: string;
}[];
unstagedFiles: string[];
needsResolving: boolean;
}>;
export declare function gitAddAll({ options }: {
options: ValidConfigOptions;
}): Promise<{
cmdArgs: readonly string[];
code: number | null;
stderr: string;
stdout: string;
}>;
export declare function commitChanges({ options, commit, commitAuthor, }: {
options: ValidConfigOptions;
commit: Commit;
commitAuthor: CommitAuthor;
}): Promise<void>;
export type ConflictingFiles = Awaited<ReturnType<typeof getConflictingFiles>>;
export declare function getConflictingFiles(options: ValidConfigOptions): Promise<{
absolute: string;
relative: string;
}[]>;
export declare function getUnstagedFiles(options: ValidConfigOptions): Promise<string[]>;
export declare function createBackportBranch({ options, sourceBranch, backportBranch, targetBranch, }: {
options: ValidConfigOptions;
sourceBranch: string;
backportBranch: string;
targetBranch: string;
}): Promise<void>;
export declare function deleteBackportBranch({ options, backportBranch, }: {
options: ValidConfigOptions;
backportBranch: string;
}): Promise<void>;
export declare function getRepoForkOwner(options: ValidConfigOptions): string;
export declare function pushBackportBranch({ options, backportBranch, }: {
options: ValidConfigOptions;
backportBranch: string;
}): Promise<{
cmdArgs: readonly string[];
code: number | null;
stderr: string;
stdout: string;
}>;
export declare function getLocalSourceRepoPath(options: ValidConfigOptions): Promise<string | undefined>;