Source Control
Existem muitas opções ao trabalhar com Source Control. Na ISE, usamos o AzureDevOps para repositórios privados e o GitHub para repositórios públicos.
Seções dentro do Source Control
- Estratégias de Mesclagem
- Nomenclatura de Ramificação
- Versionamento
- Trabalhando com Segredos
- Orientação do Git
Objetivo
- Seguir as melhores práticas da indústria para trabalhar em equipes geodistribuídas que incentivam contribuições de toda a ISE, bem como da comunidade de Código Aberto mais ampla
- Melhorar a qualidade do código, garantindo revisões antes da mesclagem nas branches principais
- Melhorar a rastreabilidade de recursos e correções por meio de um histórico de commits limpo
Orientações Gerais
A consistência é importante, portanto, concorde com a abordagem como equipe antes de começar a codificar. Trate isso como uma decisão de design, inclua uma proposta de design e revisão, da mesma forma como você documentaria todas as decisões de design (consulte Acordos de Trabalho e Revisões de Design).
Criando um novo repositório
Ao criar um novo repositório, a equipe deve fazer pelo menos o seguinte:
- Concordar com a branch, release e estratégia de mesclagem
- Definir a estratégia de mesclagem (linear ou não linear)
- Bloquear a branch padrão e mesclar usando pull requests (PRs)
- Concordar com a nomenclatura de branches (por exemplo,
user/your_alias/feature_name
) - Estabelecer políticas de branch/PR
- Para repositórios públicos, a branch padrão deve conter os seguintes arquivos:
Contribuindo para um repositório existente
Ao trabalhar em um projeto existente, faça git clone
do repositório e certifique-se de entender a estratégia de branch, mesclagem e lançamento da equipe (por exemplo, por meio do arquivo CONTRIBUTING.md do projeto).
Ambientes DevOps Mistos
Na maioria dos casos, ter um único ambiente DevOps hospedado (ou seja, Azure DevOps) é o caminho preferido, mas há momentos em que um ambiente DevOps misto (ou seja, Azure DevOps para rastreamento de itens de trabalho ágil e GitHub para Controle de Origem) é necessário devido a requisitos do cliente. Ao trabalhar em um ambiente misto:
- Marque manualmente os PRs nos itens de trabalho
- Certifique-se de que o escopo dos itens de trabalho/tarefas esteja alinhado com os PRs
Recursos
- Git
--local-branching-on-the-cheap
- Azure DevOps
- Detalhes do Git da ISE: detalhes sobre como usar o Git como parte de um projeto da ISE.
- GitHub - Removendo dados sensíveis de um repositório
- Curso Pluralsight sobre Como o Git Funciona
- Curso Pluralsight sobre Domínio do Git