def remote_name
      unless @remote_name
        @remote_name = config['gitProcess.remoteName']
        if @remote_name.nil? or @remote_name.empty?
          remotes = self.remote_names
          if remotes.empty?
            @remote_name = nil
          else
            @remote_name = remotes[0]
            raise "remote name is not a String: #{@remote_name.inspect}" unless @remote_name.is_a? String
          end
        end
        logger.debug { "Using remote name of '#{@remote_name}'" }
      end
      @remote_name
    end
def remote_name
      unless @remote_name
        @remote_name = config['gitProcess.remoteName']
        if @remote_name.nil? or @remote_name.empty?
          remotes = self.remote_names
          if remotes.empty?
            @remote_name = nil
          else
            @remote_name = remotes[0]
            raise "remote name is not a String: #{@remote_name.inspect}" unless @remote_name.is_a? String
          end
        end
        logger.debug { "Using remote name of '#{@remote_name}'" }
      end
      @remote_name
    end
Returns the "remote name" to use. By convention the most common name is "origin".

 If the Git configuration "gitProcess.remoteName" is set, that will always be used. Otherwise this
 simple returns the first name it finds in the list of remotes.

 @return [String, nil] the remote name, or nil if there are none defined