Até recentemente, a coleção de Ports era gerenciada usando o CVS. O CVS não armazena revisões de todo o repositório, mas sim por arquivo.
Atualmente, a coleção Ports é gerenciada usando o SVN. O repositório é publicamente disponível . No entanto, como os usuários finais não precisam acessar os recursos do SVN, como mensagens de confirmação ou histórico de arquivos, o utilitário portsnap
é usado.
O Portsnap usa um arquivo em /usr/ports/.portsnap.INDEX
que contém hashes de todas as portas dentro da árvore. Usando esse arquivo e sua versão do lado do servidor, as alterações podem ser detectadas e apenas os patches necessários são baixados.
O registro de data e hora de seu instantâneo atual é armazenado em /var/db/portsnap/tag
no segundo campo. Usando essa data, você pode tentar corresponder uma revisão no repositório do Subversion, mas isso é o mais próximo possível.