code: def push(self, remote, branch=None):
          '''Push a repository
          :param remote: git-remote instance
          :param branch: name of the branch to push
          :return: PushInfo, git push output lines
          '''
          pb = ProgressBar()
          pb.setup(self.name, ProgressBar.Action.PUSH)
          if branch:
              result = remote.push(branch, progress=pb)
          else: #pragma: no cover
              result = remote.push(progress=pb)
          print()
          return result, pb.other_linef push(self, remote, branch=None):
          '''Push a repository
          :param remote: git-remote instance
          :param branch: name of the branch to push
          :return: PushInfo, git push output lines
          '''
          pb = ProgressBar()
          pb.setup(self.name, ProgressBar.Action.PUSH)
          if branch:
              result = remote.push(branch, progress=pb)
          else: #pragma: no cover
              result = remote.push(progress=pb)
          print()
          return result, pb.other_lines
docs: Push a repository
          :param remote: git-remote instance
          :param branch: name of the branch to push
          :return: PushInfo, git push output lines