Class: Gollum::Git::Index

Inherits:
Object
  • Object
show all
Defined in:
lib/rjgit_adapter/git_layer_rjgit.rb

Instance Method Summary collapse

Constructor Details

#initialize(index) ⇒ Index

Returns a new instance of Index.



308
309
310
311
# File 'lib/rjgit_adapter/git_layer_rjgit.rb', line 308

def initialize(index)
  @index = index
  @current_tree = nil
end

Instance Method Details

#add(path, data) ⇒ Object



317
318
319
# File 'lib/rjgit_adapter/git_layer_rjgit.rb', line 317

def add(path, data)
  @index.add(path, data)
end

#commit(message, parents = nil, actor = nil, last_tree = nil, ref = Gollum::Git.default_ref_for_repo(@index.jrepo)) ⇒ Object



321
322
323
324
325
326
327
# File 'lib/rjgit_adapter/git_layer_rjgit.rb', line 321

def commit(message, parents = nil, actor = nil, last_tree = nil, ref = Gollum::Git.default_ref_for_repo(@index.jrepo))
  actor = actor ? actor.actor : RJGit::Actor.new('Gollum', 'gollum@wiki')
  parents = parents.map{|parent| parent.commit} if parents
  commit_data = @index.commit(message, actor, parents, Gollum::Git.canonicalize(ref))
  return false if !commit_data
  commit_data[2]
end

#current_treeObject



343
344
345
# File 'lib/rjgit_adapter/git_layer_rjgit.rb', line 343

def current_tree
  @current_tree
end

#delete(path) ⇒ Object



313
314
315
# File 'lib/rjgit_adapter/git_layer_rjgit.rb', line 313

def delete(path)
  @index.delete(path)
end

#read_tree(tree) ⇒ Object



333
334
335
336
337
338
339
340
341
# File 'lib/rjgit_adapter/git_layer_rjgit.rb', line 333

def read_tree(tree)
  tree = tree.id if tree.is_a?(Tree)
  begin
    @index.current_tree = RJGit::Tree.new(@index.jrepo, nil, nil, RevWalk.new(@index.jrepo).lookup_tree(@index.jrepo.resolve("#{tree}^{tree}")))
  rescue
    raise Gollum::Git::NoSuchShaFound
  end
  @current_tree = Gollum::Git::Tree.new(@index.current_tree)
end

#treeObject



329
330
331
# File 'lib/rjgit_adapter/git_layer_rjgit.rb', line 329

def tree
  @index.treemap
end