Git::Remote::Parser
Usage
This gem can parse remote urls into Git::Remote::Parser::Result
object:
> parser = Git::Remote::Parser.new
=> #<Git::Remote::Parser:0x007ffd5c0d4718>
> result = parser.parse "[email protected]:torvalds/linux.git"
=> #<Git::Remote::Parser::Result:0x007fb11b82fc70 @protocol=nil, @username="git", @host="github.com", @owner="torvalds", @repo="linux", @html_url="https://github.com/torvalds/linux">
> result.host
=> "github.com"
> result.owner
=> "torvalds"
> result.repo
=> "linux"
> result.html_url
=> "https://github.com/torvalds/linux"
> result.to_h
=> {:protocol=>nil, :username=>"git", :host=>"github.com", :owner=>"torvalds", :repo=>"linux", :html_url=>"https://github.com/torvalds/linux"}
Tested work for these Git providers:
Examples:
https://github.com/torvalds/linux.git
[email protected]:torvalds/linux.git
Examples:
https://gitlab.com/gitlab-org/gitlab-ce.git
[email protected]:gitlab-org/gitlab-ce.git
Examples:
https://[email protected]/ged/ruby-pg
ssh://[email protected]/ged/ruby-pg
- and legacy host
bitbucket.com
Installation
Add this line to your application's Gemfile:
gem 'git-remote-parser'
# or double quote if you prefer:
gem "git-remote-parser"
And then execute:
$ bundle
Or install it yourself as:
$ gem install git-remote-parser
Contributing
See CONTRIBUTING.md
License
The gem is available as open source under the terms of the MIT License.