githuburl

Parse a github repo url into an object of repo information and convert to several types of clone URL.

githuburl

Utitiles to parse a github repo url to

  • an object of repo information.
  • transfer into different types of clone urls
  • convert into a link to the project.
$ npm install githuburl --save
var gu = require('githuburl');
var str = 'git@github.com:kaelzhang/node-githuburl.git'
// `str` could be either a scp-like syntax ssh url(as above), or http(s) url or something else. 
 
gu(str);

Then we will get:

{
  user: 'kaelzhang',
  repo: 'node-githuburl',
  ssh_user: 'git',
  host: 'github.com',
  
  // Actually the properties below are all getters, 
  // which you need not to concern about the performance. 
  http_href: 'http://github.com/kaelzhang/node-githuburl',
  https_href: 'https://github.com/kaelzhang/node-githuburl',
  http_clone_url: 'http://github.com/kaelzhang/node-githuburl.git',
  https_clone_url: 'https://github.com/kaelzhang/node-githuburl.git',
  ssh_clone_url: 'git@github.com:kaelzhang/node-githuburl.git',
  git_clone_url: 'git://github.com/kaelzhang/node-githuburl.git' 
}

Which you don't need to worry about.

var str = 'https://vip_account@abc.github.com/kaelzhang/node-githuburl.git';
var parsed = gu(str, true);
 
parsed.ssh_user;
// -> 'vip_account'; 
 
parsed.host;
// -> 'abc.github.com' 
  • str String could be either a scp-like syntax ssh url(as above), or http(s) url or something else.

Returns Object the parsed object.