A nova versão implementa várias melhorias
Após três meses de desenvolvimento, o lançamento de a nova versão do popular sistema de controle de código-fonte distribuído "Git 2.40".
Git é um dos sistemas de controle de versão mais populares, confiáveis e de alto desempenho que fornece ferramentas flexíveis de desenvolvimento não linear baseadas em filiais e fusões de filiais.
Para garantir a integridade do histórico e a resistência a alterações de datas anteriores, o hash implícito de todo o histórico anterior é usado em cada commit, também é possível verificar as assinaturas digitais dos desenvolvedores de tags e commits individuais.
Novos recursos principais do Git 2.40
Comparativamente à versão anterior, foram aceites 472 alterações na nova versão, elaborada com a participação de 88 programadores, dos quais 30 estiveram envolvidos no desenvolvimento pela primeira vez.
Das mudanças mais importantes nesta nova versão, podemos encontrar no Git 2.40 adicionado suporte para o editor Emacs para script git-jump, além do editor Vim anteriormente suportado.
Git-jump é usado para passar informações de posição em um arquivo para um editor de texto para navegação rápida e pular para edição de código em um local específico.
pule envolve outros comandos git. Como git grep e insere seus resultados na lista de correções rápidas do Vim. Por exemplo, git-jump pode ser usado para alternar o editor entre as linhas resultantes da análise de conflitos de mesclagem, avaliando diferenças e realizando pesquisas (você pode fazer "git jump grep foo" e depois pular rapidamente entre as posições onde aparece a máscara "Foo" ).
Outra mudança que se destaca é em «arquivo cat git« fornece suporte para usar opções "-s” e “–verificação de lote" junto com "--use-mailmap” para determinar corretamente o tamanho do objeto, levando em consideração a substituição do identificador com base nos links de e-mail especificados no arquivo mailmap (anteriormente, a opção “–use-mailmap” afetava apenas a saída do conteúdo, mas eu não não leve em conta que os pares de nome/e-mail antigos e substituídos podem ter tamanhos diferentes).
Opção adicionada «-fonte» no comando «git check-attr« para selecionar uma árvore com o arquivo «.gitatributos» necessário, que será usado para determinar os atributos reais na presença de vários arquivos «.gitatributos» no repositório.
A implementação do comando "git bisect" foi reescrito em C e incorporado no executável principal do git (o comando foi implementado anteriormente como um script de shell).
Implementação de shell anterior removida de "git add --interactive" (Uma versão C integrada foi oferecida no git 2.26, mas a implementação anterior do shell ainda estava disponível e controlada pela configuração add.interactive.useBuiltin.)
Como esse padrão é verdadeiro desde a versão 2.37, o projeto Git decidiu que é hora de abandonar totalmente a implementação herdada, marcando o fim de outro esforço de um ano para melhorar o desempenho do Git e reduzir a pegada de scripts legados.
Das outras mudanças que se destacam na nova versão do Git 2.40
- Adicionada a opção '–merge-base' ao comando 'git merge-tree'.
- Adicionada a opção “–abbrev=" ao comando "git range-diff".
- Adicionada a capacidade de substituir o editor de lista para o modo interativo do comando reorg definindo a variável GIT_SEQUENCE_EDITOR por meio do comando "git var", semelhante a "git var GIT_EDITOR".
- O suporte para senhas expiradas foi adicionado ao subsistema de contas.
- Os scripts de conclusão de entrada para Bash implementam um modo que não diferencia maiúsculas de minúsculas.
Por último, mas não menos importante, existem algumas melhorias ocultas na infraestrutura de CI do Git. O Git tem um punhado de compilações de CI específicas do Windows de longa duração que foram desativadas nesta versão (fora do repositório git-for-windows). Se você for um desenvolvedor Git, isso significa que suas execuções de CI devem ser concluídas mais rapidamente e consumir menos recursos por push.
Por fim, se você tiver interesse em saber mais sobre o assunto, pode consultar os detalhes no link a seguir.