'Instantiates a new GitRepoHelper
:type uri: string
:param uri: git repository url
:type branch: string
:param branch: git remote branch
:type destination_dir: string
:param destination_dir: path of a dir where to save downloaded code
:type commit: string
:param commit: specific commit to download
:type lbranch: string
:param lbranch: git local branch name, if different from remote
:type base_uri: string
:param base_uri: a closer, usually local, git repository url from where
to fetch content first from.
:param remote_destination_dir: To where the source code will be copied
on the client
:param patches: List of patches to be applied on top of this kernel
:param config: Config to pass to the kernel'

def __init__(self, uri, branch='master', lbranch='master', commit=None, destination_dir=None, base_uri=None, remote_destination_dir=None, patches=[], config=None):

    super(GitKernel, self).__init__(uri=uri, branch=branch, lbranch=lbranch, commit=commit, destination_dir=destination_dir, base_uri=base_uri)
    if (remote_destination_dir is None):
        self.remote_destination_dir = self.destination_dir
    else:
        self.remote_destination_dir = remote_destination_dir
    self.patches = patches
    self.config = config
