O Git 2.33 melhora as funções para os criadores de script e coloca um novo back-end de mesclagem que é mais de 9.000 vezes mais rápido. Se você não sabe, o Git é um software de controle de versão distribuído que basicamente permite que várias pessoas trabalhem em paralelo e salva um histórico de todas as alterações feitas. Assim, o novo Git 2.33 lançado com mesclagem ‘merge-ort’.
História do Git
Em 2002, a equipe do kernel Linux adotou o BitKeeper. Linus Torvalds estava entre os proponentes do novo sistema. No entanto, outros desenvolvedores estavam preocupados em usar uma ferramenta proprietária para desenvolver código aberto. Em 2005, a empresa de propriedade da BitKeeper anunciou que descontinuaria a versão gratuita.
Portanto, Linus Torvalds precisava urgentemente de um novo sistema de controle de versão para manter o desenvolvimento do Kernel Linux. Então, ele ficou offline por uma semana, escreveu um novo sistema revolucionário do zero e o chamou de Git.
Dezesseis anos depois, a plataforma é líder indiscutível no campo de software de controle de versão distribuída.
O que mais há de novo no Git 2.33 lançado com mesclagem ‘merge-ort’
O Git 2.33 vem principalmente com correções de bugs e uma nova estratégia para realizar fusões. Para quem não conhece, uma estratégia de mesclagem é o mecanismo usado para combinar código de várias versões da mesma base de código.
Para fundir duas ramificações, o Git atualmente usa o comando, que foi primeiro escrito como um script Python externo e depois reescrito em C – merge-recursive
. Assim, o Git 2.33 traz uma nova estratégia de mesclagem chamada merge-ort
.
O trabalho de preparação para um novo back-end de estratégia de mesclagem está agora em sua reta final. Merge-ort é apresentado como uma reescrita completa da abordagem recursiva usada atualmente, que visa corrigir problemas em áreas como correção e desempenho. Ele foi reescrito do zero com os mesmos conceitos de recursão e detecção de renomeação.
De acordo com o GitHub:
Para uma fusão (mas uma grande e complicada contendo muitas renomeações), o merge-ort ganha mais de 500x de aumento de velocidade. Para uma série de mesclagens semelhantes em uma operação de rebase, a aceleração é superior a 9000x.
Isso se deve ao fato de que o novo algoritmo no Git 2.33 irá armazenar em cache e reutilizar alguns cálculos comuns às mesclagens. Além disso, o código resultante é mais limpo e fácil de trabalhar.
O novo merge-ort
provavelmente se tornará a estratégia padrão em uma versão futura do Git. Até então, você pode tentar esse recurso executando o comando git merge -s ort
.
Além do novo recurso acima, o Git Project adiciona os seguintes recursos ao Git 2.33.0:
git worktree add --lock
aprende a registrar porque a árvore de trabalho está bloqueada com uma mensagem personalizada.git send-email
aprendi a--sendmail-cmd
opção de linha de comando e a variávelsendemail.sendmailCmd
de configuração, que é uma abordagem mais sensata do que a maneira atual de redefinir osmtp-server
, deixando de nomear o servidor para, em vez disso, nomear o comando para falar com o servidor.- Várias melhorias em torno da reembalagem geométrica.
- Git agora usando a API hashfile no codepath que grava o arquivo de índice para reduzir a duplicação de código.
git rev-list
aprende a omitir ascommit <object-name>
linhas de cabeçalho da saída com a--no-commit-header
opção.
Mais detalhes sobre as mudanças com o Git 2.33 podem ser encontrados no blog do GitHub.
Via Linuxiac