def get_git_tree(self, sha, recursive=github.GithubObject.NotSet):
assert isinstance(sha, (str, unicode)), sha<EOL>assert recursive is github.GithubObject.NotSet or isinstance(recursive, bool), recursive<EOL>url_parameters = dict()<EOL>if recursive is not github.GithubObject.NotSet and recursive:<EOL><INDENT>url_parameters["<STR_LIT>"] = <NUM_LIT:1><EOL><DEDENT>headers, data = self._requester.requestJsonAndCheck(<EOL>"<STR_LIT:GET>",<EOL>self.url + "<STR_LIT>" + sha,<EOL>parameters=url_parameters<EOL>)<EOL>return github.GitTree.GitTree(self._requester, headers, data, completed=True)<EOL>
:calls: `GET /repos/:owner/:repo/git/trees/:sha <http://developer.github.com/v3/git/trees>`_
:param sha: string
:param recursive: bool
:rtype: :class:`github.GitTree.GitTree`