Nova versión de Git 2.28, que permite non usar o nome "mestre" para as ramas mestras

Dispoñible liberación dun sistema de control de fonte distribuído git 2.28.0. Git é un dos sistemas de control de versións máis populares, fiables e de alto rendemento, que ofrece ferramentas de desenvolvemento flexibles e non lineais baseadas en ramificación e fusión. Para garantir a integridade do historial e a resistencia aos cambios retroactivos, en cada commit utilízase o hash implícito de todo o historial anterior; tamén é posible certificar etiquetas e commits individuais con sinaturas dixitais dos desenvolvedores.

En comparación coa versión anterior, a nova versión incluíu 317 cambios, preparados coa participación de 58 desenvolvedores, dos cales 13 participaron no desenvolvemento por primeira vez. Básico innovacións:

  • Engadida a configuración init.defaultBranch, que lle permite seleccionar un nome arbitrario para a rama principal, que se utilizará por defecto. Engadiuse esta configuración para proxectos cuxos desenvolvedores están perseguidos por recordos da escravitude, e a palabra "mestre" percíbese como un indicio ofensivo ou evoca angustia mental e unha sensación de culpa irredenta. GitHub, GitLab и Bitbucket decidiu usar a palabra "principal" en lugar da palabra "mestre" para as ramas principais. En Git, como antes, a execución do comando "git init" segue creando a rama "mestra" por defecto, pero agora pódese cambiar este nome. Por exemplo, para cambiar o nome da rama inicial a "principal", pode usar o comando:

    git config --global init.defaultBranch main

  • Engadíronse optimizacións de rendemento baseadas na aparencia no formato de ficheiro commit-graph, usado para optimizar o acceso á información de commit, soporte Filtros de floración, unha estrutura probabilística que permite a identificación falsa dun elemento que falta, pero exclúe a omisión dun elemento existente. A estrutura especificada permítelle acelerar significativamente a busca no historial de cambios ao usar os comandos "git log - " ou " git blame ".
  • O comando "git status" proporciona información sobre o progreso da operación de clonación parcial (sparse-checkout).
  • Propúxose unha nova configuración "diff.relative" para a familia de comandos "diff".
  • Ao comprobar a través de "git fsck", agora avalíase a ordenación da árbore de obxectos e identifícanse os elementos sen clasificar.
  • Simplificouse a interface para editar información confidencial na saída de rastrexo.
  • Engadiuse o soporte para completar opcións para o comando "git switch" ao script de finalización de entrada.
  • "git diff" agora admite pasar argumentos en diferentes notacións ("git diff A..BC", "git diff A..BC...D", etc.).
  • Engadiuse a posibilidade de especificar unha asignación de elementos personalizado ao comando "git fast-export --anonymize" para afinar a saída para facelo máis depurable.
  • O "git gui" permítelle abrir árbores de traballo desde o diálogo inicial.
  • O protocolo "fetch/clone" implementa a capacidade do servidor para informar ao cliente sobre a necesidade de cargar ficheiros de paquetes preparados previamente ademais dos datos de obxectos empaquetados transmitidos.
  • Continuou o traballo na transición ao algoritmo de hash SHA-256 en lugar de SHA-1.

Fonte: opennet.ru

Engadir un comentario