Stefan Sperling (), participante do projeto OpenBSD com uma década de experiência, além de um dos principais desenvolvedores do Apache Subversion, um novo sistema de controle de versões (got). Ao criar um novo sistema, a prioridade é a simplicidade da estrutura e da usabilidade, em vez de flexibilidade. O Got ainda está em desenvolvimento; ele está sendo completamente desenvolvido no OpenBSD e seu público-alvo são os desenvolvedores do OpenBSD. O código é distribuído sob a licença livre (equivalente a uma licença simplificada BSD e MIT).
Para armazenar dados versionados, o Got usa repositórios git. No momento, apenas operações locais de controle de versão são suportadas. No entanto, o git pode ser utilizado para qualquer funcionalidade que ainda não foi implementada no got — trabalhar com got e git em um único repositório sempre será possível.
O principal atual do projeto é interagir com os desenvolvedores do OpenBSD, que desejam usar regularmente o got para seu trabalho no OpenBSD, e melhorar as operações de controle de versão com base no feedback recebido deles.
Os principais princípios do projeto:
- Seguir as diretrizes de segurança e o estilo de codificação do OpenBSD;
- Um processo de desenvolvimento baseado em revisão de código por e-mail;
- Uso () e () em todo o código-fonte;
- Usar separação de privilégios ao analisar dados de repositórios pela rede ou do disco;
- Suporte ao código-fonte sob licença BSD.
Objetivos de longo prazo:
- Manter a compatibilidade com o formato de disco do repositório git (sem manter compatibilidade com ferramentas);
- Fornecer um conjunto completo de ferramentas de controle de versão para OpenBSD:
- Uma interface de linha de comando intuitiva para realizar as operações necessárias de controle de versão ()
- Um navegador interativo de repositório para analisar o histórico e revisar as alterações confirmadas ()
- Um script CGI que implementa uma interface web — navegador de repositório
- Ferramentas de administração de repositórios com forte ênfase em backup e recuperação
- Um servidor de repositório para hospedar um repositório central e sincronizar alterações com uma cascata de espelhos públicos e privados
- Requisitos para o fluxo de trabalho dos desenvolvedores do OpenBSD:
- Suporte embutido forte ao modelo de repositório centralizado;
- Para desenvolvedores que não precisam de branches, a simplicidade de uso é mantida;
- Suporte a branches locais para desenvolvedores que precisam deles;
- Suporte a branches de lançamento "-stable";
- Outras funcionalidades necessárias para construir a infraestrutura do projeto OpenBSD.
- Implementação de conexões de rede autenticadas e criptografadas:
- Acesso a repositórios via SSH e adicionalmente TLS para clonar repositórios e obter alterações;
- Acesso a repositórios apenas via SSH para efectuar alterações;
- O acesso a repositórios não é possível através de conexões não criptografadas.
Got já no diretório de ports como "". No será apresentado sobre o novo sistema de controle de versões.
Fonte: opennet.ru
