'Pushes a stable branch and git version tag to --github_publisher\'s Halyard repository.'

def __push_halyard_tag_and_branch(self):

    (major, minor, _) = self.__stable_version.split('.')
    self.__stable_branch = format_stable_branch(major, minor)
    if self.__patch_release:
        check_run_quick('git    -C    halyard    checkout    {0}'.format(self.__stable_branch))
    else:
        check_run_quick('git    -C    halyard    checkout    -b    {0}'.format(self.__stable_branch))
    repo_to_push = 'git@github.com:{owner}/halyard.git'.format(owner=self.__github_publisher)
    check_run_quick('git    -C    halyard    remote    add    release    {url}'.format(url=repo_to_push))
    print 'Pushing    Halyard    stable    branch    {branch}    to    {repo}'.format(branch=self.__stable_branch, repo=repo_to_push)
    check_run_quick('git    -C    halyard    push    release    {branch}'.format(branch=self.__stable_branch))
    print 'Pushing    Halyard    stable    version    tag    {tag}    to    {repo}'.format(tag=self.__stable_version_tag, repo=self.__halyard_repo_uri)
    check_run_quick('git    -C    halyard    push    release    {tag}'.format(tag=self.__stable_version_tag))
