fetch
Fetch commits from a remote repository
| param | type [= default] | description |
|---|---|---|
| core | string = 'default' | The plugin core identifier to use for plugin injection |
| fs [deprecated] | FileSystem | The filesystem containing the git repo. Overrides the fs provided by the plugin system. |
| dir | string | The working tree directory path |
| gitdir | string = join(dir,'.git') | The git directory path |
| url | string | The URL of the remote repository. Will be gotten from gitconfig if absent. |
| corsProxy | string | Optional CORS proxy. Overrides value in repo config. |
| ref | string = 'HEAD' | Which branch to fetch. By default this is the currently checked out branch. |
| singleBranch | boolean = false | Instead of the default behavior of fetching all the branches, only fetch a single branch. |
| noGitSuffix | boolean = false | If true, clone will not auto-append a .git suffix to the url. (AWS CodeCommit needs this option) |
| tags | boolean = false | Also fetch tags |
| remote | string | What to name the remote that is created. |
| depth | number | Integer. Determines how much of the git repository's history to retrieve |
| since | Date | Only fetch commits created after the given date. Mutually exclusive with depth. |
| exclude | Array<string> = [] | A list of branches or tags. Instructs the remote server not to send us any commits reachable from these refs. |
| relative | boolean = false | Changes the meaning of depth to be measured from the current shallow depth rather than from the branch tip. |
| username | string | See the Authentication documentation |
| password | string | See the Authentication documentation |
| token | string | See the Authentication documentation |
| oauth2format | string | See the Authentication documentation |
| headers | object | Additional headers to include in HTTP requests, similar to git's extraHeader config |
| prune | boolean | Delete local remote-tracking branches that are not present on the remote |
| pruneTags | boolean | Prune local tags that don’t exist on the remote, and force-update those tags that differ |
| autoTranslateSSH | boolean | Attempt to automatically translate SSH remotes into HTTP equivalents |
| emitter [deprecated] | EventEmitter | Overrides the emitter set via the 'emitter' plugin. |
| emitterPrefix | string = '' | Scope emitted events by prepending emitterPrefix to the event name. |
| return | Promise<FetchResponse> | Resolves successfully when fetch completes |
The object returned has the following schema:
type FetchResponse = {
defaultBranch: string | null; // The branch that is cloned if no branch is specified (typically "master")
fetchHead: string | null; // The SHA-1 object id of the fetched head commit
fetchHeadDescription: string | null; // a textual description of the branch that was fetched
headers?: object; // The HTTP response headers returned by the git server
pruned?: Array<string>; // A list of branches that were pruned, if you provided the `prune` parameter
}
Future versions of isomorphic-git might return additional metadata.
To monitor progress events, see the documentation for the 'emitter' plugin.
Example Code:
await git.fetch({
dir: '$input((/))',
corsProxy: 'https://cors.isomorphic-git.org',
url: '$input((https://github.com/isomorphic-git/isomorphic-git))',
ref: '$input((master))',
depth: $input((1)),
singleBranch: $input((true)),
tags: $input((false))
})
console.log('done')