code: def _push(project):
      
      repo = project.repo
      remote_name = project.get('project', 'remote')
      remote = repo.remote(remote_name)
      result = _call_remote_push(remote)
      failures = lfilter(complement(did_git_push_succeed), result)
      if failures:
          for push_info in failures:
              logger.error(
                  'Failed to push ref {from_ref} to {to_ref}'
                  .format(from_ref=push_info.local_ref.name,
                          to_ref=push_info.remote_ref.name))
          raise BalletError('Push failed')
docs: Push default branch and project template branch to remote
  
      With default config (i.e. remote and branch names), equivalent to::
  
          $ git push origin master:master project-template:project-template
  
      Raises:
          ballet.exc.BalletError: Push failed in some way