Git/Get-RefsForRepository.ps1

function Get-RefsForRepository {
    Param(
        # Project Name
        [Parameter(Mandatory=$true)]
        [string]
        $ProjectName,
        # Repository Name
        [Parameter(Mandatory=$false)]
        [string]
        $RepositoryName = '',
        # Repository ID
        [Parameter(Mandatory=$false)]
        [string]
        $RepositoryID = ''
    )

    if (('' -eq $RepositoryName) -and ('' -eq $RepositoryID)) {
        throw 'Please supply either RepositoryName or RepositoryID to Get-RefsForRepository'
    }

    $ProjectName = Get-ProjectName -ProjectName $ProjectName

    if ('' -eq $RepositoryID) {
        $RepositoryID = Get-RepositoryId -ProjectName $ProjectName -RepositoryName $RepositoryName
    }

    $Url = '{0}{1}/_apis/git/repositories/{2}/refs' -f (Get-TFSCollectionURL), $ProjectName, $RepositoryID    
    $Refs = (Invoke-TFSAPI -Url $Url).value | Select-Object name
    $Refs | ForEach-Object {$_.name.Trim()}
}

function Get-RefIsInRepository {
    Param(
        # name of tag/branch
        [Parameter(Mandatory=$true)]
        [string]
        $RefName,
        # project name to retrieve refs for
        [Parameter(Mandatory=$true)]
        [string]
        $ProjectName,
        # Repository Name
        [Parameter(Mandatory=$false)]
        [string]
        $RepositoryName = '',
        # Repository ID
        [Parameter(Mandatory=$false)]
        [string]
        $RepositoryID = ''
    )

    $Refs = Get-RefsForRepository -ProjectName $ProjectName -RepositoryName $RepositoryName -RepositoryID $RepositoryID
    $MatchingRefs = $Refs | Where-Object {$_ -like "*$RefName"}
    if ($null -ne $MatchingRefs) {
        return $true
    }
    else {
        return $false
    }
}

Export-ModuleMember -Function Get-RefsForRepository
Export-ModuleMember -Function Get-RefIsInRepository