Lançamento do sistema de controle de versões Git 2.53

Foi lançado o release do sistema de controle de versão distribuído Git 2.53. O Git se destaca pela alta performance e oferece ferramentas de desenvolvimento não linear, baseadas em ramificações e fusões de branches. Para garantir a integridade do histórico e resistência a alterações retroativas, utiliza-se a hash implícita de todo o histórico anterior em cada commit, bem como a validação digital com assinaturas dos desenvolvedores em tags e commits individuais. O código do Git é distribuído sob a licença GPLv2+.

Comparado à versão anterior, na nova versão foram aceitas 466 mudanças, elaboradas com a participação de 70 desenvolvedores (21 deles participaram pela primeira vez no desenvolvimento do Git). Entre as principais inovações:

  • Foi adicionada a possibilidade de aplicar a estratégia de empacotamento de repositórios "geometric" ("git repack --geometric") a repositórios externos parcialmente clonados operando em modo "promisor" (os objetos ausentes são baixados conforme necessário). Durante a reempacotagem com as opções "--geometric", os arquivos pack com a extensão ".promisor" são processados e empacotados separadamente. A estratégia "geometric" permite reduzir o tempo de manutenção de grandes monorepositórios, por meio do reaproveitamento seletivo de objetos e da exclusão de operações excessivamente custosas em recursos, como a fusão de todos os arquivos pack (mantendo a progressão geométrica do tamanho dos arquivos pack, onde cada arquivo pack seguinte deve ser pelo menos duas vezes maior que o anterior).
  • Foi adicionada à equipe "git fast-import" a opção "--signed-commits=strip-if-invalid" para remover assinaturas digitais de objetos importados que se tornaram inválidos após a reescrita de parte do histórico do repositório. Anteriormente, era possível importar ou remover todas as assinaturas, sem distinção entre as válidas e as que perderam significado. A opção "strip-if-invalid" permite a implementação de ferramentas para manter as assinaturas válidas e re-assinar objetos com assinaturas que perderam a atualidade.
  • A saída do comando «git repo structure» foi adicionada com informações sobre o tamanho de todos os objetos acessíveis (reachable) no repositório, divididos por tipo. As informações agora são exibidas de uma forma legível, com unidades de medida, e são mostradas separadamente para os tamanhos efetivos e os ocupados no disco, permitindo avaliar o tamanho total do repositório no disco. $ git repo structure | Estrutura do repositório | Valor | | ——————— | ———- | | * Referências | | | * Contagem | 1.78 k | | * Branches | 5 | | * Tags | 1.03 k | | * Remotes | 749 | | * Outros | 0 | | | | | * Objetos acessíveis | | | * Contagem | 421.37 k | | * Commits | 88.03 k | | * Trees | 169.95 k | | * Blobs | 162.40 k | | * Tags | 994 | | * Tamanho inflado | 7.61 GiB | | * Commits | 60.95 MiB | | * Trees | 2.44 GiB | | * Blobs | 5.11 GiB | | * Tags | 731.73 KiB | | * Tamanho em disco | 301.50 MiB | | * Commits | 33.57 MiB | | * Trees | 77.92 MiB | | * Blobs | 189.44 MiB | | * Tags | 578.13 KiB |
  • O comando «git maintenance» recebeu a subcomando «is-needed» para executar operações de manutenção no repositório somente quando necessário.
  • No comando experimental «git replay», a atualização de referências em transações é implementada por padrão, em vez de mostrar para onde as referências devem apontar sem atualizá-las.
  • O comando «git blame» agora permite escolher o algoritmo de avaliação de diferenças usando a opção «—diff-algorithm=<algo>».
  • O comando «git repo info» agora conta com a opção «—all».
  • Foi transferido do Git-for-Windows o suporte para links simbólicos na plataforma Windows.

Na versão anterior, foi adicionada uma advertência sobre a inclusão por padrão da compilação de componentes na linguagem Rust no Git 2.53. No entanto, na versão do Git 2.53, foram apenas adicionadas melhorias específicas para suporte a Rust (como a possibilidade de compilar sem o GNU sed), mas a compilação com Rust usando Makefile permanece desativada por padrão (exige a definição do parâmetro WITH_RUST), enquanto no uso do Meson é ativada automaticamente na presença do compilador rustc. Na versão Git 3.0, pretende-se incluir as ferramentas Rust como dependências obrigatórias da compilação.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster