code: func (s *GitScanner) RemoteForPush(r string) error {
  	s.mu.Lock()
  	defer s.mu.Unlock()
  
  	if len(s.remote) > 0 && s.remote != r {
  		return fmt.Errorf("Trying to set remote to %q, already set to %q", r, s.remote)
  	}
  
  	s.remote = r
  	s.skippedRefs = calcSkippedRefs(r)
  	return nil
  }
docs: // RemoteForPush sets up this *GitScanner to scan for objects to push to the
  // given remote. Needed for ScanLeftToRemote().