class Github::GitData::Trees

def create(user_name, repo_name, params={})


]
...
},
"sha" => "44b4fc6d56897b048c772eb4087f854f46256132"
"type" => "blob",
"mode" => "100644",
"path" => "file.rb",
{
"tree" => [
github.git_data.trees.create 'user-name', 'repo-name',
github = Github.new
= Examples

* tree.content:: String of content you want this file to have - GitHub will write this blob out and use the SHA for this entry. Use either this or tree.sha
* tree.sha:: String of SHA1 checksum ID of the object in the tree
* tree.type:: String of blob, tree, commit
* tree.mode:: String of the file mode - one of 100644 for file(blob), 100755 for executable (blob), 040000 for subdirectory (tree), 160000 for submodule (commit) or 120000 for a blob that specifies the path of a symlink
* tree.path:: String of the file referenced in the tree
* :tree - array of hash objects(of :path, :mode, :type and sha)
* :base_tree - optional string of the SHA1 of the tree you want to update with new data
= Parameters

and write a new tree out.
it will overwrite the contents of that tree with the new path contents
If both a tree and a nested path modifying that tree are specified,
The tree creation API will take nested entries as well.

Create a tree
def create(user_name, repo_name, params={})
  set :user => user_name, :repo => repo_name
  assert_presence_of user, repo
  normalize! params
  assert_required_keys(%w[ tree ], params)
  filter! VALID_TREE_PARAM_NAMES, params['tree']
  assert_valid_values(VALID_TREE_PARAM_VALUES, params['tree'])
  post_request("/repos/#{user}/#{repo}/git/trees", params)
end

def get(user_name, repo_name, sha, params={})


github.git_data.trees.get 'user-name', 'repo-name', 'sha', 'recursive' => true
github = Github.new
= Examples

Get a tree recursively

end
file.path
github.git_data.trees.get 'user-name', 'repo-name', 'sha' do |file|
github.git_data.trees.get 'user-name', 'repo-name', 'sha'
github = Github.new
= Examples

Get a tree
def get(user_name, repo_name, sha, params={})
  set :user => user_name, :repo => repo_name
  assert_presence_of user, repo, sha
  normalize! params
  response = if params['recursive']
    params['recursive'] = 1
    get_request("/repos/#{user}/#{repo}/git/trees/#{sha}", params)
  else
    get_request("/repos/#{user}/#{repo}/git/trees/#{sha.to_s}", params)
  end
  return response unless block_given?
  response.tree.each { |el| yield el }
end

def initialize(options = {})

Creates new GitData::Trees API
def initialize(options = {})
  super(options)
end