Nesta semana, o Git 2.11 foi lançado e tem mais de 650 commits nas áreas de manipulação de nomes SHA-1, melhorias de desempenho e outras novidades.
As abreviações de nomes SHA-1 são derivadas da assinatura de 160 bits (ou 40 caracteres hexadecimais) de um commit. Os desenvolvedores usam um caractere abreviado 4 como, por exemplo, uma conveniência em vez do Hash original de 40 caracteres. No entanto, essa conveniência também pode levar a um choque de nomes.
[awprm urls=https://imasters.com.br/noticia/github-extension-agora-tem-suporte-para-visual-studio-2017-rc/,https://imasters.com.br/noticia/gitkraken-adere-ao-student-developer-pack/]
Por exemplo, ao usar versões anteriores, o comando git show renderia uma mensagem indicando que o nome abreviado era ambíguo.
git show 454c error: short SHA1 454c is ambiguous. error: short SHA1 454c is ambiguous.
Agora, o mesmo comando vai render.
git show 454c error: short SHA1 454c is ambiguous hint: The candidates are: hint: 454cb6bd5 commit 2016-11-29 - Git 2.11 hint: 454ce7ef2 blob
A ambiguidade nos nomes pode ser desfeita manualmente, fornecendo mais caracteres ou através de um comando git config.
Os nomes abreviados mais longos também são mostrados por padrão. Por exemplo, o comando a seguir produz o nome abreviado de nove caracteres em vez do nome abreviado de sete caracteres, como nas versões anteriores.
git log --oneline 454cb6bd5 Git 2.11
O Git 2.11, segundo divulgado pelo InfoQ, traz melhorias significativas de desempenho para Delta Chains and Object em packfiles. Ele acelera a computação de IDs de patch, que é usado pelo comando git rebase e, finalmente, inclui um mecanismo de filtro para acelerar a conversão de e para a representação de sistema de arquivos local.
Todas as novidades do Git 2.11 podem ser conferidas nas Release Notes.