'Iterate over git-ls-tree and create GitTreeItems.'

def _initialize(self):

    (status, out, err) = git.ls_tree(u'--full-tree', u'-r', u'-t', u'-z', self.ref)
    if (status != 0):
        Interaction.log_status(status, out, err)
        return
    if (not out):
        return
    for line in out[:(-1)].split(u'\x00'):
        objtype = line[7]
        relpath = line[(((((6 + 1) + 4) + 1) + 40) + 1):]
        if (objtype == u't'):
            parent = self.dir_entries[utils.dirname(relpath)]
            self.add_directory(parent, relpath)
        elif (objtype == u'b'):
            self.add_file(relpath)
