Discern
Discern information about git and github urls.
Installation
$ npm install discern
API
folder(dir, callback) / folder.sync(dir)
For a folder that represents a github url, this will attempt to return the "origin" remote. On failure, it returns null.
github(url)
Takes a github url with the optional extension of using #branch-name
on the end to denote a branch/tag/commit. It returns an array containing [user, repo, branch]
where branch
defaults to master
. This can be used to build the GitHub url, a url to the tarball etc. etc.
normalize(url)
Currently just a pass through, but the aim will be to get git urls as close as possible to some normal form. In particular, it should do the work required by npm's addRemoteGit
isGitUrl(url)
Returns true
if the url has a protocol of 'git:', 'git+http:', 'git+https:', 'git+rsync:', 'git+ftp:', 'git+ssh:' or path ending in '.git'.
Returns false
otherwise.
isGistUrl(url)
Returns true
if the url is a gist.github.com
url, otherwise false
.
isGitHubUrl(url)
Returns true
if the url is a github.com
url, otherwise false
.
License
MIT