Class: Git::Remote

Inherits:
Path
  • Object
show all
Defined in:
lib/git/remote.rb

Instance Attribute Summary collapse

Attributes inherited from Path

#path

Instance Method Summary collapse

Methods inherited from Path

#readable?, #writable?

Constructor Details

#initialize(base, name) ⇒ Remote

Returns a new instance of Remote.



6
7
8
9
10
11
12
# File 'lib/git/remote.rb', line 6

def initialize(base, name)
  @base = base
  config = @base.lib.config_remote(name)
  @name = name
  @url = config['url']
  @fetch_opts = config['fetch']
end

Instance Attribute Details

#fetch_optsObject

Returns the value of attribute fetch_opts.



4
5
6
# File 'lib/git/remote.rb', line 4

def fetch_opts
  @fetch_opts
end

#nameObject

Returns the value of attribute name.



4
5
6
# File 'lib/git/remote.rb', line 4

def name
  @name
end

#urlObject

Returns the value of attribute url.



4
5
6
# File 'lib/git/remote.rb', line 4

def url
  @url
end

Instance Method Details

#branch(branch = 'master') ⇒ Object



23
24
25
# File 'lib/git/remote.rb', line 23

def branch(branch = 'master')
  Git::Branch.new(@base, "#{@name}/#{branch}")
end

#fetch(opts = {}) ⇒ Object



14
15
16
# File 'lib/git/remote.rb', line 14

def fetch(opts={})
  @base.fetch(@name, opts)
end

#merge(branch = 'master') ⇒ Object

merge this remote locally



19
20
21
# File 'lib/git/remote.rb', line 19

def merge(branch = 'master')
  @base.merge("#{@name}/#{branch}")
end

#removeObject



27
28
29
# File 'lib/git/remote.rb', line 27

def remove
  @base.lib.remote_remove(@name)     
end

#to_sObject



31
32
33
# File 'lib/git/remote.rb', line 31

def to_s
  @name
end