# File lib/git/object.rb, line 98 def initialize(base, sha, mode = nil) super(base, sha) @mode = mode end
# File lib/git/object.rb, line 107 def blobs check_tree @blobs end
# File lib/git/object.rb, line 103 def children blobs.merge(subtrees) end
# File lib/git/object.rb, line 124 def depth @base.lib.tree_depth(@objectish) end
# File lib/git/object.rb, line 120 def full_tree @base.lib.full_tree(@objectish) end
# File lib/git/object.rb, line 128 def tree? true end
# File lib/git/object.rb, line 113 def trees check_tree @trees end
actually run the git command
# File lib/git/object.rb, line 135 def check_tree unless @trees @trees = {} @blobs = {} data = @base.lib.ls_tree(@objectish) data['tree'].each { |k, d| @trees[k] = Git::Object::Tree.new(@base, d[:sha], d[:mode]) } data['blob'].each { |k, d| @blobs[k] = Git::Object::Blob.new(@base, d[:sha], d[:mode]) } end end