99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
# File 'lib/rugged/repository.rb', line 99
def diff(left, right, opts = {})
left = rev_parse(left) if left.kind_of?(String)
right = rev_parse(right) if right.kind_of?(String)
if !left.is_a?(Rugged::Tree) && !left.is_a?(Rugged::Commit) && !left.nil?
raise TypeError, "Expected a Rugged::Tree or Rugged::Commit instance"
end
if !right.is_a?(Rugged::Tree) && !right.is_a?(Rugged::Commit) && !right.nil?
raise TypeError, "Expected a Rugged::Tree or Rugged::Commit instance"
end
if left
left.diff(right, opts)
elsif right
right.diff(left, opts.merge(:reverse => !opts[:reverse]))
end
end
|