gh-clone
v2.0.1
Published
git clone a repo with only username/repo, or if it's an NPM package you can use just the name of the project.
Downloads
1,245
Readme
gh-clone
git clone a repo with only username/repo, or if it's an NPM package you can use just the name of the project.
Please consider following this project's author, Jon Schlinkert, and consider starring the project to show your :heart: and support.
Install
Install globally with npm
$ npm install --global gh-clone
CLI Usage
Clone a github repository:
$ gh-clone <repo> [options]
repo
- one or more space-separated repository namesoptions
options flags to pass togh-clone
Examples
repository name
If the repository is a NPM package, you can pass the name only, and gh-clone
will resolve the git URL from the library's package.json
:
$ gh-clone isobject
owner/repo
Pass the github repository formatted as owner/repo
:
$ gh-clone jonschlinkert/isobject
Options
| Shortcut | Flag | Description |
| --- | --- | --- |
| -c
| --cwd
| the current working directory (defaults to process.cwd()
) |
| -d
| --dest
| the local destination directory to clone the repository to |
| -b
| --branch
| the branch to clone |
Note that if the --dest
flag is used when cloning multiple repositories, the name of each repository will be appended to the dest value.
Examples
branch
Flags can be used in any order. If you want the dev
branch of micromatch (when one exists):
$ gh-clone jonschlinker/micromatch -b dev
destination
If you want to save to the foo
directory
$ gh-clone jonschlinker/micromatch -d foo
branch and destination
If you want to save the dev
branch to the foo
directory
$ gh-clone jonschlinker/micromatch -b dev -d foo
API Usage
Params
repos
{String|Array}options
{Object}callback
{Function}: Optional, returns a promise if the callback is not passed.returns
{Promise}: if a callback is not passed.
Example
const clone = require('gh-clone');
clone('kind-of', function(err) {
if (err) console.error(err);
});
// or
clone(['isobject', 'kind-of'])
.then(function() {
// do stuff
})
.catch(console.error)
About
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
$ npm install && npm test
(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)
To generate the readme, run the following command:
$ npm install -g verbose/verb#dev verb-generate-readme && verb
Related projects
You might also be interested in these projects:
- first-commit-date: Returns a JavaScript date object with the date and time of a git repository's first… more | homepage
- get-first-commit: Returns a git repository's first commit as a JavaScript object. | homepage
- github-base: JavaScript wrapper that greatly simplifies working with GitHub's API. | homepage
Contributors
| Commits | Contributor | | --- | --- | | 30 | jonschlinkert | | 12 | doowb | | 1 | johno | | 1 | theuves |
Author
Jon Schlinkert
License
Copyright © 2018, Jon Schlinkert. Released under the MIT License.
This file was generated by verb-generate-readme, v0.6.0, on May 28, 2018.