Os desenvolvedores do projeto OpenBSD publicaram o lançamento do sistema de controle de versão Got 0.80 (Game of Trees), que se concentra na facilidade de design e uso. Para armazenar dados versionados, Got usa armazenamento compatível com o formato de disco dos repositórios Git, o que permite trabalhar com o repositório usando os kits de ferramentas Got e Git. Por exemplo, com o Git, você pode fazer coisas que não foram implementadas no Got. O código é distribuído sob uma licença ISC gratuita.
O principal objetivo do projeto é apoiar o desenvolvimento do OpenBSD atendendo às especificidades do projeto. Entre outras coisas, Got usa as regras de segurança do OpenBSD (como separação de privilégios e o uso de chamadas de promessa e revelação) e estilo de codificação. O kit de ferramentas é projetado em torno do processo de desenvolvimento com um repositório centralizado compartilhado e filiais locais para desenvolvedores, acesso SSH externo e revisão de alterações por e-mail.
Para controle de versão, o utilitário obtido é oferecido com o conjunto usual de comandos. Para simplificar o trabalho, o utilitário suporta apenas o conjunto mínimo necessário de comandos e opções, suficiente para realizar operações básicas sem complicações desnecessárias. Para operações avançadas, sugere-se usar git normal. As operações de gerenciamento de repositório são movidas para um utilitário gotadmin separado que executa tarefas como inicialização do repositório, empacotamento de índices e limpeza de dados. Para navegar pelos dados no repositório, a interface web gotwebd e o utilitário tog são fornecidos para visualização interativa do conteúdo do repositório a partir da linha de comando.
Entre as alterações adicionadas:
- O processo do servidor gotd, que fornece acesso à rede do repositório, agora permite adicionar regras para autorizar operações de leitura e gravação para cada repositório individualmente.
- Novos processos, "listen" e "session", foram adicionados ao gotd para monitorar solicitações de sockets Unix e gerenciar sessões. As operações de autenticação também foram movidas para um processo filho separado.
- O isolamento do processo em segundo plano do gotd foi alterado de chroot para a chamada de sistema uncover. A restrição que permitia apenas que usuários do grupo gotsh se conectassem ao gotd foi removida.
- O Gotd implementa um limite no número de conexões por UID.
- Foram adicionadas configurações de gerenciamento de conexão ao gotd.conf, e o parâmetro 'unix_socket' foi substituído por 'listen on'.
- O acesso às informações exibidas ao executar o comando 'gotctl info' agora está restrito ao usuário root.
- O desenvolvimento do wrapper CGI do got, o gotweb, foi descontinuado. A implementação FastCGI, gotwebd, deve ser usada para a interface web em seu lugar. Suas funcionalidades foram significativamente expandidas. Por exemplo, o gotwebd agora inclui um mecanismo de templates para simplificar as alterações no design da página, um feed RSS para rastreamento de tags e uma exibição aprimorada de blobs e listas de commits.
- Os comandos got log, got diff e tog diff agora suportam saída no formato diffstat.
- Redução do consumo de memória ao limitar o número de tags armazenadas no cache de objetos.
- A atualização implementada remove os arquivos binários.
Fonte: opennet.ru
