Added more documentation

This commit is contained in:
Dolan
2017-06-09 02:11:48 +01:00
parent 93a3dc1f47
commit 3fe8ca1a01
14 changed files with 1873 additions and 19 deletions

View File

@@ -10,16 +10,102 @@ export namespace Packbuilder {
}
export class Packbuilder {
/**
*
*
* @static
* @param {Repository} repo
* @returns {Packbuilder}
*
* @memberof Packbuilder
*/
static create(repo: Repository): Packbuilder;
/**
*
*
*
* @memberof Packbuilder
*/
free(): void;
/**
*
*
* @returns {Oid}
*
* @memberof Packbuilder
*/
hash(): Oid;
/**
*
*
* @param {Oid} id
* @param {string} name
* @returns {number}
*
* @memberof Packbuilder
*/
insert(id: Oid, name: string): number;
/**
*
*
* @param {Oid} id
* @returns {number}
*
* @memberof Packbuilder
*/
insertCommit(id: Oid): number;
/**
*
*
* @param {Oid} id
* @param {string} name
* @returns {number}
*
* @memberof Packbuilder
*/
insertRecur(id: Oid, name: string): number;
/**
*
*
* @param {Oid} id
* @returns {number}
*
* @memberof Packbuilder
*/
insertTree(id: Oid): number;
/**
*
*
* @param {Revwalk} walk
* @returns {number}
*
* @memberof Packbuilder
*/
insertWalk(walk: Revwalk): number;
/**
*
*
* @returns {number}
*
* @memberof Packbuilder
*/
objectCount(): number;
/**
*
*
* @param {number} n
* @returns {number}
*
* @memberof Packbuilder
*/
setThreads(n: number): number;
/**
*
*
* @returns {number}
*
* @memberof Packbuilder
*/
written(): number;
}

View File

@@ -18,17 +18,125 @@ export namespace Pathspec {
}
export class Pathspec {
/**
*
*
* @static
* @param {*} m
* @param {number} pos
* @returns {DiffDelta}
*
* @memberof Pathspec
*/
static matchListDiffEntry(m: any, pos: number): DiffDelta;
/**
*
*
* @static
* @param {*} m
* @param {number} pos
* @returns {string}
*
* @memberof Pathspec
*/
static matchListEntry(m: any, pos: number): string;
/**
*
*
* @static
* @param {*} m
* @returns {number}
*
* @memberof Pathspec
*/
static matchListEntrycount(m: any): number;
/**
*
*
* @static
* @param {*} m
* @param {number} pos
* @returns {string}
*
* @memberof Pathspec
*/
static matchListFailedEntry(m: any, pos: number): string;
/**
*
*
* @static
* @param {*} m
* @returns {number}
*
* @memberof Pathspec
*/
static matchListFailedEntrycount(m: any): number;
/**
*
*
* @static
* @param {Strarray} pathspec
* @returns {Pathspec}
*
* @memberof Pathspec
*/
static create(pathspec: Strarray): Pathspec;
/**
*
*
*
* @memberof Pathspec
*/
free(): void;
/**
*
*
* @param {Diff} diff
* @param {number} flags
* @returns {Promise<any>}
*
* @memberof Pathspec
*/
matchDiff(diff: Diff, flags: number): Promise<any>;
/**
*
*
* @param {Index} index
* @param {number} flags
* @returns {Promise<any>}
*
* @memberof Pathspec
*/
matchIndex(index: Index, flags: number): Promise<any>;
/**
*
*
* @param {Tree} tree
* @param {number} flags
* @returns {Promise<any>}
*
* @memberof Pathspec
*/
matchTree(tree: Tree, flags: number): Promise<any>;
/**
*
*
* @param {Repository} repo
* @param {number} flags
* @returns {Promise<any>}
*
* @memberof Pathspec
*/
matchWorkdir(repo: Repository, flags: number): Promise<any>;
/**
*
*
* @param {number} flags
* @param {string} path
* @returns {number}
*
* @memberof Pathspec
*/
matchesPath(flags: number, path: string): number;
}

View File

@@ -1,7 +1,41 @@
import { RemoteCallbacks } from './remote-callbacks';
import { Strarray } from './str-array';
import { ProxyOptions } from './proxy-options';
export interface PushOptions {
/**
*
*
* @type {number}
* @memberof PushOptions
*/
version?: number;
/**
*
*
* @type {number}
* @memberof PushOptions
*/
pbParallelism?: number;
/**
*
*
* @type {RemoteCallbacks}
* @memberof PushOptions
*/
callbacks?: RemoteCallbacks;
/**
*
*
* @type {Strarray}
* @memberof PushOptions
*/
customHeaders: Strarray
/**
*
*
* @type {ProxyOptions}
* @memberof PushOptions
*/
proxyOpts: ProxyOptions
}

View File

@@ -1,8 +1,32 @@
import { Oid } from './oid';
export class PushUpdate {
/**
*
*
* @type {string}
* @memberof PushUpdate
*/
srcRefname: string;
/**
*
*
* @type {string}
* @memberof PushUpdate
*/
dstRefname: string;
/**
*
*
* @type {Oid}
* @memberof PushUpdate
*/
src: Oid;
/**
*
*
* @type {Oid}
* @memberof PushUpdate
*/
dst: Oid;
}

View File

@@ -2,5 +2,15 @@ import { RemoteCallbacks } from './remote-callbacks';
import { PushOptions } from './push-options';
export class Push {
/**
*
*
* @static
* @param {PushOptions} opts
* @param {number} version
* @returns {number}
*
* @memberof Push
*/
static initOptions(opts: PushOptions, version: number): number;
}

View File

@@ -12,7 +12,25 @@ export namespace RebaseOperation {
}
export class RebaseOperation {
/**
*
*
* @type {number}
* @memberof RebaseOperation
*/
type: number;
/**
*
*
* @type {Oid}
* @memberof RebaseOperation
*/
id: Oid;
/**
*
*
* @type {string}
* @memberof RebaseOperation
*/
exec: string;
}

View File

@@ -4,6 +4,7 @@ import { Repository } from './repository';
import { Signature } from './signature';
import { Oid } from './oid';
import { RebaseOperation } from './rebase-operation';
import { Index } from './index';
export interface RebaseOptions {
version: number;
@@ -13,15 +14,112 @@ export interface RebaseOptions {
}
export class Rebase {
/**
*
*
* @static
* @param {Repository} repo
* @param {AnnotatedCommit} branch
* @param {AnnotatedCommit} upstream
* @param {AnnotatedCommit} onto
* @param {RebaseOptions} opts
* @returns {Promise<Rebase>}
*
* @memberof Rebase
*/
static init(repo: Repository, branch: AnnotatedCommit, upstream: AnnotatedCommit, onto: AnnotatedCommit, opts: RebaseOptions): Promise<Rebase>;
/**
*
*
* @static
* @param {RebaseOptions} opts
* @param {number} version
* @returns {number}
*
* @memberof Rebase
*/
static initOptions(opts: RebaseOptions, version: number): number;
/**
*
*
* @static
* @param {Repository} repo
* @param {RebaseOptions} opts
* @returns {Promise<Rebase>}
*
* @memberof Rebase
*/
static open(repo: Repository, opts: RebaseOptions): Promise<Rebase>;
/**
*
*
* @returns {number}
*
* @memberof Rebase
*/
abort(): number;
/**
*
*
* @param {Signature} author
* @param {Signature} committer
* @param {string} message_encoding
* @param {string} message
* @returns {Oid}
*
* @memberof Rebase
*/
commit(author: Signature, committer: Signature, message_encoding: string, message: string): Oid;
/**
*
*
* @param {Signature} signature
* @returns {number}
*
* @memberof Rebase
*/
finish(signature: Signature): number;
/**
*
*
* @param {Index} index
* @returns {number}
*
* @memberof Rebase
*/
inmemoryIndex(index: Index): number;
/**
*
*
* @returns {Promise<RebaseOperation>}
*
* @memberof Rebase
*/
next(): Promise<RebaseOperation>;
/**
*
*
* @param {number} idx
* @returns {RebaseOperation}
*
* @memberof Rebase
*/
operationByIndex(idx: number): RebaseOperation;
/**
*
*
* @returns {number}
*
* @memberof Rebase
*/
operationCurrent(): number;
/**
*
*
* @returns {number}
*
* @memberof Rebase
*/
operationEntrycount(): number;
}

View File

@@ -1,8 +1,30 @@
import { Repository } from './repository';
export class Refdb {
/**
*
*
* @static
* @param {Repository} repo
* @returns {Promise<Refdb>}
*
* @memberof Refdb
*/
static open(repo: Repository): Promise<Refdb>;
/**
*
*
* @returns {number}
*
* @memberof Refdb
*/
compress(): number;
/**
*
*
*
* @memberof Refdb
*/
free(): void;
}

View File

@@ -3,25 +3,127 @@ import { Oid } from './oid';
import { Signature } from './signature';
export class Reflog {
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @returns {number}
*
* @memberof Reflog
*/
static delete(repo: Repository, name: string): number;
static entryCommitter(entry: ReflogEntry): Signature;
static entryIdNew(entry: ReflogEntry): Oid;
static entryIdOld(entry: ReflogEntry): Oid;
static entryMessage(entry: ReflogEntry): string;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @returns {Promise<Reflog>}
*
* @memberof Reflog
*/
static read(repo: Repository, name: string): Promise<Reflog>;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} old_name
* @param {string} name
* @returns {number}
*
* @memberof Reflog
*/
static rename(repo: Repository, old_name: string, name: string): number;
/**
*
*
* @param {Oid} id
* @param {Signature} committer
* @param {string} msg
* @returns {number}
*
* @memberof Reflog
*/
append(id: Oid, committer: Signature, msg: string): number;
/**
*
*
* @param {number} idx
* @param {number} rewrite_previous_entry
* @returns {number}
*
* @memberof Reflog
*/
drop(idx: number, rewrite_previous_entry: number): number;
/**
*
*
* @param {number} idx
* @returns {ReflogEntry}
*
* @memberof Reflog
*/
entryByIndex(idx: number): ReflogEntry;
/**
*
*
* @returns {number}
*
* @memberof Reflog
*/
entrycount(): number;
/**
*
*
*
* @memberof Reflog
*/
free(): void;
/**
*
*
* @returns {number}
*
* @memberof Reflog
*/
write(): number;
}
export class ReflogEntry {
/**
*
*
* @returns {Signature}
*
* @memberof ReflogEntry
*/
committer(): Signature;
/**
*
*
* @returns {Oid}
*
* @memberof ReflogEntry
*/
idNew(): Oid;
/**
*
*
* @returns {Oid}
*
* @memberof ReflogEntry
*/
idOld(): Oid;
/**
*
*
* @returns {string}
*
* @memberof ReflogEntry
*/
message(): string;
}

View File

@@ -1,8 +1,52 @@
export class Refspec {
/**
*
*
* @returns {number}
*
* @memberof Refspec
*/
direction(): number;
/**
*
*
* @returns {string}
*
* @memberof Refspec
*/
dst(): string;
/**
*
*
* @param {string} refname
* @returns {number}
*
* @memberof Refspec
*/
dstMatches(refname: string): number;
/**
*
*
* @returns {number}
*
* @memberof Refspec
*/
force(): number;
/**
*
*
* @returns {string}
*
* @memberof Refspec
*/
src(): string;
/**
*
*
* @param {string} refname
* @returns {number}
*
* @memberof Refspec
*/
srcMatches(refname: string): number;
}

View File

@@ -19,41 +19,365 @@ export namespace Reference {
}
export class Reference {
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @param {Oid} id
* @param {number} force
* @param {string} logMessage
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
static create(repo: Repository, name: string, id: Oid, force: number, logMessage: string): Promise<Reference>;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @param {Oid} id
* @param {number} force
* @param {Oid} currentId
* @param {string} logMessage
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
static createMatching(repo: Repository, name: string, id: Oid, force: number, currentId: Oid, logMessage: string): Promise<Reference>;
/**
*
*
* @static
* @param {Repository} repo
* @param {(string | Reference)} id
* @param {Function} callback
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
static dwim(repo: Repository, id: string | Reference, callback: Function): Promise<Reference>;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} refname
* @returns {number}
*
* @memberof Reference
*/
static ensureLog(repo: Repository, refname: string): number;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} refname
* @returns {number}
*
* @memberof Reference
*/
static hasLog(repo: Repository, refname: string): number;
/**
*
*
* @static
* @param {string} refname
* @returns {number}
*
* @memberof Reference
*/
static isValidName(refname: string): number;
/**
*
*
* @static
* @param {Repository} repo
* @returns {Promise<any[]>}
*
* @memberof Reference
*/
static list(repo: Repository): Promise<any[]>;
/**
*
*
* @static
* @param {Repository} repo
* @param {(string | Reference)} id
* @param {Function} callback
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
static lookup(repo: Repository, id: string | Reference, callback: Function): Promise<Reference>;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @returns {Promise<Oid>}
*
* @memberof Reference
*/
static nameToId(repo: Repository, name: string): Promise<Oid>;
/**
*
*
* @static
* @param {string} bufferOut
* @param {number} bufferSize
* @param {string} name
* @param {number} flags
* @returns {number}
*
* @memberof Reference
*/
static normalizeName(bufferOut: string, bufferSize: number, name: string, flags: number): number;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @returns {number}
*
* @memberof Reference
*/
static remove(repo: Repository, name: string): number;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @param {string} target
* @param {number} force
* @param {string} logMessage
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
static symbolicCreate(repo: Repository, name: string, target: string, force: number, logMessage: string): Promise<Reference>;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @param {string} target
* @param {number} force
* @param {string} currentValue
* @param {string} logMessage
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
static symbolicCreateMatching(repo: Repository, name: string, target: string, force: number, currentValue: string, logMessage: string): Promise<Reference>;
/**
*
*
* @param {Reference} ref2
* @returns {number}
*
* @memberof Reference
*/
cmp(ref2: Reference): number;
/**
*
*
* @returns {number}
*
* @memberof Reference
*/
delete(): number;
/**
*
*
* @returns {number}
*
* @memberof Reference
*/
isBranch(): number;
/**
*
*
* @returns {number}
*
* @memberof Reference
*/
isNote(): number;
/**
*
*
* @returns {number}
*
* @memberof Reference
*/
isRemote(): number;
/**
*
*
* @returns {number}
*
* @memberof Reference
*/
isTag(): number;
/**
*
*
* @returns {string}
*
* @memberof Reference
*/
name(): string;
/**
*
*
* @returns {Repository}
*
* @memberof Reference
*/
owner(): Repository;
/**
*
*
* @param {number} type
* @returns {Promise<Object>}
*
* @memberof Reference
*/
peel(type: number): Promise<Object>;
/**
*
*
* @param {string} newName
* @param {number} force
* @param {string} logMessage
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
rename(newName: string, force: number, logMessage: string): Promise<Reference>;
/**
*
*
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
resolve(): Promise<Reference>;
/**
*
*
* @param {Oid} id
* @param {string} logMessage
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
setTarget(id: Oid, logMessage: string): Promise<Reference>;
/**
*
*
* @returns {string}
*
* @memberof Reference
*/
shorthand(): string;
/**
*
*
* @param {string} target
* @param {string} logMessage
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
symbolicSetTarget(target: string, logMessage: string): Promise<Reference>;
/**
*
*
* @returns {string}
*
* @memberof Reference
*/
symbolicTarget(): string;
/**
*
*
* @returns {Oid}
*
* @memberof Reference
*/
target(): Oid;
/**
*
*
* @returns {Oid}
*
* @memberof Reference
*/
targetPeel(): Oid;
/**
*
*
* @returns {number}
*
* @memberof Reference
*/
type(): number;
isValid(): Boolean;
isConcrete(): Boolean;
isSymbolic(): Boolean;
/**
*
*
* @returns {boolean}
*
* @memberof Reference
*/
isValid(): boolean;
/**
*
*
* @returns {boolean}
*
* @memberof Reference
*/
isConcrete(): boolean;
/**
*
*
* @returns {boolean}
*
* @memberof Reference
*/
isSymbolic(): boolean;
/**
*
*
* @returns {string}
*
* @memberof Reference
*/
toString(): string;
/**
*
*
* @returns {boolean}
*
* @memberof Reference
*/
isHead(): boolean;
/**
*
*
* @returns {Promise<Reference>}
*
* @memberof Reference
*/
dup(): Promise<Reference>;
}

View File

@@ -1,8 +1,44 @@
export class RemoteCallbacks {
/**
*
*
* @type {number}
* @memberof RemoteCallbacks
*/
version?: number;
/**
*
*
* @type {Function}
* @memberof RemoteCallbacks
*/
credentials?: Function;
/**
*
*
* @type {Function}
* @memberof RemoteCallbacks
*/
certificateCheck?: Function;
/**
*
*
* @type {Function}
* @memberof RemoteCallbacks
*/
transferProgress?: Function;
/**
*
*
* @type {Function}
* @memberof RemoteCallbacks
*/
transport?: Function;
/**
*
*
* @type {undefined}
* @memberof RemoteCallbacks
*/
payload?: undefined;
}

View File

@@ -24,42 +24,367 @@ export namespace Remote {
}
export class Remote {
/**
*
*
* @static
* @param {Repository} repo
* @param {string} remote
* @param {string} refspec
* @returns {number}
*
* @memberof Remote
*/
static addFetch(repo: Repository, remote: string, refspec: string): number;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} remote
* @param {string} refspec
* @returns {number}
*
* @memberof Remote
*/
static addPush(repo: Repository, remote: string, refspec: string): number;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @param {string} url
* @returns {Remote}
*
* @memberof Remote
*/
static create(repo: Repository, name: string, url: string): Remote;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} url
* @returns {Promise<Remote>}
*
* @memberof Remote
*/
static createAnonymous(repo: Repository, url: string): Promise<Remote>;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @param {string} url
* @param {string} fetch
* @returns {Promise<Remote>}
*
* @memberof Remote
*/
static createWithFetchspec(repo: Repository, name: string, url: string, fetch: string): Promise<Remote>;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} name
* @returns {Promise<number>}
*
* @memberof Remote
*/
static delete(repo: Repository, name: string): Promise<number>;
/**
*
*
* @static
* @param {RemoteCallbacks} opts
* @param {number} version
* @returns {number}
*
* @memberof Remote
*/
static initCallbacks(opts: RemoteCallbacks, version: number): number;
/**
*
*
* @static
* @param {string} remote_name
* @returns {number}
*
* @memberof Remote
*/
static isValidName(remote_name: string): number;
/**
*
*
* @static
* @param {Repository} repo
* @returns {Promise<any[]>}
*
* @memberof Remote
*/
static list(repo: Repository): Promise<any[]>;
/**
*
*
* @static
* @param {Repository} repo
* @param {(string | Remote)} name
* @param {Function} callback
* @returns {Promise<Remote>}
*
* @memberof Remote
*/
static lookup(repo: Repository, name: string | Remote, callback: Function): Promise<Remote>;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} remote
* @param {number} value
* @returns {number}
*
* @memberof Remote
*/
static setAutotag(repo: Repository, remote: string, value: number): number;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} remote
* @param {string} url
* @returns {number}
*
* @memberof Remote
*/
static setPushurl(repo: Repository, remote: string, url: string): number;
/**
*
*
* @static
* @param {Repository} repo
* @param {string} remote
* @param {string} url
* @returns {number}
*
* @memberof Remote
*/
static setUrl(repo: Repository, remote: string, url: string): number;
/**
*
*
* @returns {number}
*
* @memberof Remote
*/
autotag(): number;
/**
*
*
* @param {Enums.DIRECTION} direction
* @param {RemoteCallbacks} callbacks
* @param {Function} callback
* @returns {Promise<number>}
*
* @memberof Remote
*/
connect(direction: Enums.DIRECTION, callbacks: RemoteCallbacks, callback: Function): Promise<number>;
/**
*
*
* @returns {number}
*
* @memberof Remote
*/
connected(): number;
/**
*
*
* @returns {Promise<Buf>}
*
* @memberof Remote
*/
defaultBranch(): Promise<Buf>;
/**
*
*
* @returns {Promise<void>}
*
* @memberof Remote
*/
disconnect(): Promise<void>;
/**
*
*
* @param {any[]} refSpecs
* @param {FetchOptions} opts
* @param {Function} callback
* @returns {Promise<number>}
*
* @memberof Remote
*/
download(refSpecs: any[], opts: FetchOptions, callback: Function): Promise<number>;
dup(): Promise<Remote>;
/**
*
*
* @param {any[]} refSpecs
* @param {FetchOptions} opts
* @param {string} message
* @param {Function} callback
* @returns {Promise<number>}
*
* @memberof Remote
*/
fetch(refSpecs: any[], opts: FetchOptions, message: string, callback: Function): Promise<number>;
/**
*
*
*
* @memberof Remote
*/
free(): void;
/**
*
*
* @returns {Promise<any[]>}
*
* @memberof Remote
*/
getFetchRefspecs(): Promise<any[]>;
/**
*
*
* @returns {Promise<any[]>}
*
* @memberof Remote
*/
getPushRefspecs(): Promise<any[]>;
/**
*
*
* @param {number} n
* @returns {Refspec}
*
* @memberof Remote
*/
getRefspec(n: number): Refspec;
/**
*
*
* @returns {string}
*
* @memberof Remote
*/
name(): string;
/**
*
*
* @returns {Repository}
*
* @memberof Remote
*/
owner(): Repository;
/**
*
*
* @param {RemoteCallbacks} callbacks
* @returns {number}
*
* @memberof Remote
*/
prune(callbacks: RemoteCallbacks): number;
/**
*
*
* @returns {number}
*
* @memberof Remote
*/
pruneRefs(): number;
/**
*
*
* @param {any[]} refSpecs
* @param {PushOptions} options
* @param {Function} callback
* @returns {Promise<number>}
*
* @memberof Remote
*/
push(refSpecs: any[], options: PushOptions, callback: Function): Promise<number>;
/**
*
*
* @returns {string}
*
* @memberof Remote
*/
pushurl(): string;
/**
*
*
* @returns {number}
*
* @memberof Remote
*/
refspecCount(): number;
/**
*
*
* @returns {TransferProgress}
*
* @memberof Remote
*/
stats(): TransferProgress;
/**
*
*
*
* @memberof Remote
*/
stop(): void;
/**
*
*
* @param {RemoteCallbacks} callbacks
* @param {number} update_fetchhead
* @param {number} download_tags
* @param {string} reflog_message
* @returns {number}
*
* @memberof Remote
*/
updateTips(callbacks: RemoteCallbacks, update_fetchhead: number, download_tags: number, reflog_message: string): number;
/**
*
*
* @param {Strarray} refspecs
* @param {PushOptions} opts
* @returns {number}
*
* @memberof Remote
*/
upload(refspecs: Strarray, opts: PushOptions): number;
/**
*
*
* @returns {string}
*
* @memberof Remote
*/
url(): string;
/**
* Lists advertised references from a remote. You must connect to the remote before using referenceList.
*
* @returns {Promise<any[]>}
*
* @memberof Remote
*/
referenceList(): Promise<any[]>;
}

View File

@@ -17,6 +17,7 @@ import { Config } from './config';
import { Merge } from './merge';
import { MergeOptions } from './merge-options';
import { Refdb } from './ref-db';
import {Revwalk} from './rev-walk';
export interface RepositoryInitOptions {
description: string;
@@ -84,80 +85,702 @@ export class Repository {
* @memberof Repository
*/
static openBare(barePath: string): Promise<Repository>;
/**
*
*
* @static
* @param {string} path
* @param {number} [flags]
* @param {string} [ceilingDirs]
* @returns {Promise<Repository>}
*
* @memberof Repository
*/
static openExt(path: string, flags?: number, ceilingDirs?: string): Promise<Repository>;
/**
*
*
* @static
* @param {Odb} odb
* @returns {Promise<Repository>}
*
* @memberof Repository
*/
static wrapOdb(odb: Odb): Promise<Repository>;
/**
*
*
*
* @memberof Repository
*/
cleanup(): void;
/**
*
*
* @returns {Promise<Config>}
*
* @memberof Repository
*/
config(): Promise<Config>;
/**
*
*
* @returns {Promise<Config>}
*
* @memberof Repository
*/
configSnapshot(): Promise<Config>;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
detachHead(): number;
/**
*
*
* @param {Function} callback
* @returns {Promise<any>}
*
* @memberof Repository
*/
fetchheadForeach(callback: Function): Promise<any>;
/**
*
*
*
* @memberof Repository
*/
free(): void;
/**
*
*
* @returns {string}
*
* @memberof Repository
*/
getNamespace(): string;
/**
*
*
* @returns {Promise<Reference>}
*
* @memberof Repository
*/
head(): Promise<Reference>;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
headDetached(): number;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
headUnborn(): number;
/**
*
*
* @returns {Promise<Index>}
*
* @memberof Repository
*/
index(): Promise<Index>;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
isBare(): number;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
isEmpty(): number;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
isShallow(): number;
/**
*
*
* @param {Function} callback
* @returns {Promise<any>}
*
* @memberof Repository
*/
mergeheadForeach(callback: Function): Promise<any>;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
messageRemove(): number;
/**
*
*
* @returns {Promise<Odb>}
*
* @memberof Repository
*/
odb(): Promise<Odb>;
/**
*
*
* @returns {string}
*
* @memberof Repository
*/
path(): string;
/**
*
*
* @returns {Promise<Refdb>}
*
* @memberof Repository
*/
refdb(): Promise<Refdb>;
/**
*
*
* @param {string} refname
* @returns {Promise<number>}
*
* @memberof Repository
*/
setHead(refname: string): Promise<number>;
/**
*
*
* @param {Oid} commitish
* @returns {number}
*
* @memberof Repository
*/
setHeadDetached(commitish: Oid): number;
/**
*
*
* @param {AnnotatedCommit} commitish
* @returns {number}
*
* @memberof Repository
*/
setHeadDetachedFromAnnotated(commitish: AnnotatedCommit): number;
/**
*
*
* @param {string} name
* @param {string} email
* @returns {number}
*
* @memberof Repository
*/
setIdent(name: string, email: string): number;
/**
*
*
* @param {string} nmspace
* @returns {number}
*
* @memberof Repository
*/
setNamespace(nmspace: string): number;
/**
*
*
* @param {string} workdir
* @param {number} update_gitlink
* @returns {number}
*
* @memberof Repository
*/
setWorkdir(workdir: string, update_gitlink: number): number;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
state(): number;
/**
*
*
* @returns {number}
*
* @memberof Repository
*/
stateCleanup(): number;
/**
*
*
* @returns {string}
*
* @memberof Repository
*/
workdir(): string;
/**
* Creates a branch with the passed in name pointing to the commit
*
* @param {string} name
* @param {(Commit | string | Oid)} commit
* @param {boolean} force
* @param {Signature} signature
* @param {string} logMessage
* @returns {Promise<Reference>}
*
* @memberof Repository
*/
createBranch(name: string, commit: Commit | string | Oid, force: boolean, signature: Signature, logMessage: string): Promise<Reference>;
/**
* Look up a refs's commit.
*
* @param {(string | Reference)} name
* @returns {Promise<Commit>}
*
* @memberof Repository
*/
getReferenceCommit(name: string | Reference): Promise<Commit>;
/**
* Look up a branch. Alias for getReference
*
* @param {(string | Reference)} name
* @returns {Promise<Reference>}
*
* @memberof Repository
*/
getBranch(name: string | Reference): Promise<Reference>;
/**
* Look up a branch's most recent commit. Alias to getReferenceCommit
*
* @param {(string | Reference)} name
* @returns {Promise<Commit>}
*
* @memberof Repository
*/
getBranchCommit(name: string | Reference): Promise<Commit>;
/**
* Gets the branch that HEAD currently points to Is an alias to head()
*
* @returns {Promise<Reference>}
*
* @memberof Repository
*/
getCurrentBranch(): Promise<Reference>;
/**
* Lookup the reference with the given name.
*
* @param {(string | Reference)} name
* @returns {Promise<Reference>}
*
* @memberof Repository
*/
getReference(name: string | Reference): Promise<Reference>;
/**
* Lookup references for a repository.
*
* @param {Reference.TYPE} type
* @returns {Promise<Reference[]>}
*
* @memberof Repository
*/
getReferences(type: Reference.TYPE): Promise<Reference[]>;
/**
* Lookup reference names for a repository.
*
* @param {Reference.TYPE} type
* @returns {Promise<string[]>}
*
* @memberof Repository
*/
getReferenceNames(type: Reference.TYPE): Promise<string[]>;
/**
*
*
* @param {(string | Oid)} string
* @returns {Promise<Commit>}
*
* @memberof Repository
*/
getCommit(string: string | Oid): Promise<Commit>;
/**
* Retrieve the blob represented by the oid.
*
* @param {(string | Oid)} string
* @returns {Promise<Blob>}
*
* @memberof Repository
*/
getBlob(string: string | Oid): Promise<Blob>;
/**
* Retrieve the tree represented by the oid.
*
* @param {(string | Oid)} string
* @returns {Promise<Tree>}
*
* @memberof Repository
*/
getTree(string: string | Oid): Promise<Tree>;
/**
*
*
* @param {(string | Oid)} string
* @param {string} name
* @param {string} message
* @returns {Promise<Tag>}
*
* @memberof Repository
*/
createTag(string: string | Oid, name: string, message: string): Promise<Tag>;
/**
* Creates a new lightweight tag
*
* @param {(string | Oid)} string
* @param {string} name
* @returns {Promise<Reference>}
*
* @memberof Repository
*/
createLightweightTag(string: string | Oid, name: string): Promise<Reference>;
/**
* Retrieve the tag represented by the oid.
*
* @param {(string | Oid)} string
* @returns {Promise<Tag>}
*
* @memberof Repository
*/
getTag(string: string | Oid): Promise<Tag>;
/**
* Retrieve the tag represented by the tag name.
*
* @param {string} Short
* @returns {Promise<Tag>}
*
* @memberof Repository
*/
getTagByName(Short: string): Promise<Tag>;
/**
* Deletes a tag from a repository by the tag name.
*
* @param {string} Short
* @returns {Promise<any>}
*
* @memberof Repository
*/
deleteTagByName(Short: string): Promise<any>;
createRevWalk(string: string | Oid): any;
/**
* Instantiate a new revision walker for browsing the Repository"s history. See also Commit.prototype.history()
*
* @param {(string | Oid)} string
* @returns {Revwalk}
*
* @memberof Repository
*/
createRevWalk(string: string | Oid): Revwalk;
/**
* Retrieve the master branch commit.
*
* @returns {Promise<Commit>}
*
* @memberof Repository
*/
getMasterCommit(): Promise<Commit>;
/**
* Retrieve the commit that HEAD is currently pointing to
*
* @returns {Promise<Commit>}
*
* @memberof Repository
*/
getHeadCommit(): Promise<Commit>;
/**
*
*
* @param {string} updateRef
* @param {Signature} author
* @param {Signature} committer
* @param {string} message
* @param {(Tree | Oid | string)} Tree
* @param {any[]} parents
* @returns {Promise<Oid>}
*
* @memberof Repository
*/
createCommit(updateRef: string, author: Signature, committer: Signature, message: string, Tree: Tree | Oid | string, parents: any[]): Promise<Oid>;
/**
* Creates a new commit on HEAD from the list of passed in files
*
* @param {any[]} filesToAdd
* @param {Signature} author
* @param {Signature} committer
* @param {string} message
* @returns {Promise<Oid>}
*
* @memberof Repository
*/
createCommitOnHead(filesToAdd: any[], author: Signature, committer: Signature, message: string): Promise<Oid>;
/**
* Create a blob from a buffer
*
* @param {Buffer} buffer
* @returns {Oid}
*
* @memberof Repository
*/
createBlobFromBuffer(buffer: Buffer): Oid;
/**
*
*
* @param {Tree} tree
* @returns {*}
*
* @memberof Repository
*/
treeBuilder(tree: Tree): any;
/**
* Gets the default signature for the default user and now timestamp
*
* @returns {Signature}
*
* @memberof Repository
*/
defaultSignature(): Signature;
/**
* Lists out the remotes in the given repository.
*
* @param {Function} Optional
* @returns {Promise<Object>}
*
* @memberof Repository
*/
getRemotes(Optional: Function): Promise<Object>;
/**
* Gets a remote from the repo
*
* @param {(string | Remote)} remote
* @param {Function} callback
* @returns {Promise<Remote>}
*
* @memberof Repository
*/
getRemote(remote: string | Remote, callback: Function): Promise<Remote>;
fetch(remote: string | Remote, fetchOptions: Object | FetchOptions): Promise<any>;
fetchAll(fetchOptions: Object | FetchOptions, callback: Function): Promise<any>;
/**
* Fetches from a remote
*
* @param {(string | Remote)} remote
* @param {(Object | FetchOptions)} fetchOptions
* @returns {Promise<any>}
*
* @memberof Repository
*/
fetch(remote: string | Remote, fetchOptions: Object | FetchOptions): Promise<void>;
/**
* Fetches from all remotes. This is done in series due to deadlocking issues with fetching from many remotes that can happen.
*
* @param {(Object | FetchOptions)} fetchOptions
* @param {Function} callback
* @returns {Promise<void>}
*
* @memberof Repository
*/
fetchAll(fetchOptions: Object | FetchOptions, callback: Function): Promise<void>;
/**
*
*
* @param {(string | Reference)} to
* @param {(string | Reference)} from
* @param {Signature} signature
* @param {Merge.PREFERENCE} mergePreference
* @param {MergeOptions} mergeOptions
* @returns {Promise<Oid>}
*
* @memberof Repository
*/
mergeBranches(to: string | Reference, from: string | Reference, signature: Signature, mergePreference: Merge.PREFERENCE, mergeOptions: MergeOptions): Promise<Oid>;
/**
* Rebases a branch onto another branch
*
* @param {string} branch
* @param {string} upstream
* @param {string} onto
* @param {Signature} signature
* @param {Function} beforeNextFn
* @returns {Promise<Oid>}
*
* @memberof Repository
*/
rebaseBranches(branch: string, upstream: string, onto: string, signature: Signature, beforeNextFn: Function): Promise<Oid>;
/**
*
*
* @param {Signature} signature
* @param {Function} beforeNextFn
* @returns {Promise<Oid>}
*
* @memberof Repository
*/
continueRebase(signature: Signature, beforeNextFn: Function): Promise<Oid>;
/**
* Get the status of a repo to it's working directory
*
* @param {*} opts
* @returns {Promise<any[]>}
*
* @memberof Repository
*/
getStatus(opts: any): Promise<any[]>;
/**
* Get extended statuses of a repo to it's working directory. Status entries have status, headToIndex delta, and indexToWorkdir deltas
*
* @param {*} opts
* @returns {Promise<any[]>}
*
* @memberof Repository
*/
getStatusExt(opts: any): Promise<any[]>;
/**
* Get the names of the submodules in the repository.
*
* @returns {Promise<string[]>}
*
* @memberof Repository
*/
getSubmoduleNames(): Promise<string[]>;
/**
* This will set the HEAD to point to the reference and then attempt to update the index and working tree to match the content of the latest commit on that reference
*
* @param {Reference} reference
* @param {(Object | CheckoutOptions)} opts
* @returns {Promise<any>}
*
* @memberof Repository
*/
checkoutRef(reference: Reference, opts: Object | CheckoutOptions): Promise<any>;
/**
* This will set the HEAD to point to the local branch and then attempt to update the index and working tree to match the content of the latest commit on that branch
*
* @param {(string | Reference)} branch
* @param {(Object | CheckoutOptions)} opts
* @returns {Promise<any>}
*
* @memberof Repository
*/
checkoutBranch(branch: string | Reference, opts: Object | CheckoutOptions): Promise<any>;
stageFilemode(filePath: string | any[], stageNew: Boolean): Promise<number>;
stageLines(filePath: string, newLines: any[], isStaged: Boolean): Promise<number>;
isDefaultState(): Boolean;
isApplyingMailbox(): Boolean;
isBisecting(): Boolean;
isCherrypicking(): Boolean;
isMerging(): Boolean;
isRebasing(): Boolean;
isReverting(): Boolean;
/**
* Stages or unstages line selection of a specified file
*
* @param {(string | any[])} filePath
* @param {boolean} stageNew
* @returns {Promise<number>}
*
* @memberof Repository
*/
stageFilemode(filePath: string | any[], stageNew: boolean): Promise<number>;
/**
* Stages or unstages line selection of a specified file
*
* @param {string} filePath
* @param {any[]} newLines
* @param {boolean} isStaged
* @returns {Promise<number>}
*
* @memberof Repository
*/
stageLines(filePath: string, newLines: any[], isStaged: boolean): Promise<number>;
/**
* Returns true if the repository is in the default NONE state.
*
* @returns {boolean}
*
* @memberof Repository
*/
isDefaultState(): boolean;
/**
* Returns true if the repository is in the APPLY_MAILBOX or APPLY_MAILBOX_OR_REBASE state.
*
* @returns {boolean}
*
* @memberof Repository
*/
isApplyingMailbox(): boolean;
/**
* Returns true if the repository is in the BISECT state.
*
* @returns {boolean}
*
* @memberof Repository
*/
isBisecting(): boolean;
/**
* Returns true if the repository is in the CHERRYPICK state.
*
* @returns {boolean}
*
* @memberof Repository
*/
isCherrypicking(): boolean;
/**
* Returns true if the repository is in the MERGE state.
*
* @returns {boolean}
*
* @memberof Repository
*/
isMerging(): boolean;
/**
* Returns true if the repository is in the REBASE, REBASE_INTERACTIVE, or REBASE_MERGE state.
*
* @returns {boolean}
*
* @memberof Repository
*/
isRebasing(): boolean;
/**
* Returns true if the repository is in the REVERT state.
*
* @returns {boolean}
*
* @memberof Repository
*/
isReverting(): boolean;
/**
* Discard line selection of a specified file. Assumes selected lines are unstaged.
*
* @param {string} filePath
* @param {any[]} selectedLines
* @returns {Promise<number>}
*
* @memberof Repository
*/
discardLines(filePath: string, selectedLines: any[]): Promise<number>;
/**
* Grabs a fresh copy of the index from the repository. Invalidates all previously grabbed indexes
*
* @returns {Promise<Index>}
*
* @memberof Repository
*/
refreshIndex(): Promise<Index>;
}