From 476d943baabc9852f1653088a58bdb2912bbd95a Mon Sep 17 00:00:00 2001 From: Scott Chacon Date: Sat, 8 Mar 2008 18:33:34 -0800 Subject: added tree.depth and tree.full_tree --- lib/git/lib.rb | 8 ++++++++ lib/git/object.rb | 8 ++++++++ 2 files changed, 16 insertions(+) (limited to 'lib/git') diff --git a/lib/git/lib.rb b/lib/git/lib.rb index 4352640..8003336 100644 --- a/lib/git/lib.rb +++ b/lib/git/lib.rb @@ -181,6 +181,14 @@ module Git data end + + def full_tree(sha) + command_lines('ls-tree', ['-r', sha.to_s]) + end + + def tree_depth(sha) + full_tree(sha).size + end def branches_all head = File.read(File.join(@git_dir, 'HEAD')) diff --git a/lib/git/object.rb b/lib/git/object.rb index 04102bc..e35060c 100644 --- a/lib/git/object.rb +++ b/lib/git/object.rb @@ -124,6 +124,14 @@ module Git alias_method :subtrees, :trees alias_method :subdirectories, :trees + def full_tree + @base.lib.full_tree(@objectish) + end + + def depth + @base.lib.tree_depth(@objectish) + end + private def setup -- cgit