class Gub::Repository
Attributes
full_name[RW]
info[RW]
Public Class Methods
new(full_name)
click to toggle source
# File lib/gub/repository.rb, line 5 def initialize full_name self.full_name = full_name # Strip .git from the name self.full_name = self.full_name.split('.').first if self.full_name.nil? || self.full_name.empty? Gub.log.fatal 'Unable to find repo name' exit 1 else Gub.log.debug "Loading information for #{self.full_name}" self.info = Gub.github.repo(repo: self.full_name) end end
Public Instance Methods
add_upstream()
click to toggle source
# File lib/gub/repository.rb, line 46 def add_upstream Gub.git.remote('add', 'upstream', "https://github.com/#{self.parent}") end
branches()
click to toggle source
# File lib/gub/repository.rb, line 62 def branches Gub.git.branch() end
browse()
click to toggle source
# File lib/gub/repository.rb, line 66 def browse require 'launchy' ::Launchy.open("#{Gub.github.url}#{self.full_name}") end
has_issues?()
click to toggle source
# File lib/gub/repository.rb, line 22 def has_issues? self.info.has_issues end
is_fork?()
click to toggle source
# File lib/gub/repository.rb, line 50 def is_fork? self.info.fork end
issue(id, action = :fetch, extra_args = nil)
click to toggle source
# File lib/gub/repository.rb, line 33 def issue id, action = :fetch, extra_args = nil if self.has_issues? name = self.full_name else name = self.parent end Gub::Issue.new(name, id) end
issues(params = {})
click to toggle source
# File lib/gub/repository.rb, line 26 def issues params = {} issues = [] issues << Gub.github.issues(self.full_name, params) if self.has_issues? issues << Gub.github.issues(self.parent, params) issues.flatten! end
name()
click to toggle source
# File lib/gub/repository.rb, line 18 def name self.full_name.split('/').last end
owner()
click to toggle source
# File lib/gub/repository.rb, line 42 def owner @full_name.split('/').first end
parent()
click to toggle source
# File lib/gub/repository.rb, line 54 def parent self.info.parent.full_name.split('.').first if self.info.parent end
sync()
click to toggle source
# File lib/gub/repository.rb, line 58 def sync Gub.git.sync('upstream') end