class Git::Worktrees
object that holds all the available worktrees
Public Class Methods
new(base)
click to toggle source
# File lib/git/worktrees.rb, line 8 def initialize(base) @worktrees = {} @base = base # Array contains [dir, git_hash] @base.lib.worktrees_all.each do |w| @worktrees[w[0]] = Git::Worktree.new(@base, w[0], w[1]) end end
Public Instance Methods
[](worktree_name)
click to toggle source
# File lib/git/worktrees.rb, line 29 def [](worktree_name) @worktrees.values.each_with_object(@worktrees) do |worktree, worktrees| worktrees[worktree.full] ||= worktree end[worktree_name.to_s] end
each(&)
click to toggle source
# File lib/git/worktrees.rb, line 25 def each(&) @worktrees.values.each(&) end
prune()
click to toggle source
# File lib/git/worktrees.rb, line 43 def prune @base.lib.worktree_prune end
size()
click to toggle source
array like methods
# File lib/git/worktrees.rb, line 21 def size @worktrees.size end
to_s()
click to toggle source
# File lib/git/worktrees.rb, line 35 def to_s out = '' @worktrees.each_value do |b| out << b.to_s << "\n" end out end