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 ❤️ and support.
Install globally with npm
$ npm install --global gh-cloneClone a github repository:
$ gh-clone <repo> [options]repo- one or more space-separated repository namesoptionsoptions flags to pass togh-clone
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 isobjectowner/repo
Pass the github repository formatted as owner/repo:
$ gh-clone jonschlinkert/isobject| 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.
branch
Flags can be used in any order. If you want the dev branch of micromatch (when one exists):
$ gh-clone jonschlinker/micromatch -b devdestination
If you want to save to the foo directory
$ gh-clone jonschlinker/micromatch -d foobranch and destination
If you want to save the dev branch to the foo directory
$ gh-clone jonschlinker/micromatch -b dev -d fooParams
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)Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Running Tests
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 testBuilding docs
(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 && verbYou 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
| Commits | Contributor |
|---|---|
| 30 | jonschlinkert |
| 12 | doowb |
| 1 | johno |
| 1 | theuves |
Jon Schlinkert
Copyright © 2018, Jon Schlinkert. Released under the MIT License.
This file was generated by verb-generate-readme, v0.6.0, on May 28, 2018.