Pular para o conteúdo principal

Listar repositórios com seus tamanhos no Azure Repos

· Leitura de 2 minutos
David Sanchez
David Sanchez

Nesta breve postagem, mostrarei como listar os Repositórios do Azure em um Projeto de DevOps do Azure com seus tamanhos em MB usando um script do PowerShell.

Para acompanhar este post, você precisará criar um Token de Acesso Pessoal (PAT) com o permissão de Código (leitura). Você pode ler mais sobre o PAT na documentação oficial.

$DevOpsServerName = "<YOUR AZURE DEVOPS SERVER NAME>"
$ProjectCollection = "<YOUR PROJECT COLLECTION NAME>"
$Project = "<YOUR PROJECT NAME>"
$PAT = "<YOUR PERSONAL ACCESS TOKEN>"

$baseUrl = https://$DevOpsServerName/$ProjectCollection/$Project/_apis/git/repositories?includeLinks={includeLinks}&includeAllUrls={includeAllUrls}&includeHidden={includeHidden}&api-version=6.0
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($PAT)"))
$headers = @{Authorization=("Basic {0}" -f $base64AuthInfo)}
$repositories = Invoke-RestMethod -Uri $baseUrl -Method Get -Headers $headers

foreach ($repo in $repositories.value) {
$repoName = $repo.name
$repoSize = [math]::Round(($repo.size / 1MB),2)

Write-Output "$repoName $repoSize MB"
}

Aqui está um exemplo da saída desse script:

Tailwind Traders 10.65 MB
TailwindTraders-Backend 28.45 MB
TailwindTraders-Website 14.04 MB

O script acima usa a API Rest do Azure DevOps para obter os repositórios e seus tamanhos. Você pode ler mais sobre a API na documentação oficial.

Isso é útil para saber o tamanho de seus repositórios no caso de você estar planejando fazer uma migração, ou no caso de você gostaria de saber se você tem arquivos grandes, e para saber se você precisa limpar alguns deles.

Espero ter ajudado!