The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск системы управления исходными текстами Git 2.53

03.02.2026 11:07 (MSK)

Представлен релиз распределенной системы управления исходными текстами Git 2.53. Git отличается высокой производительностью и предоставляет средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям "задним числом" используются неявное хеширование всей предыдущей истории в каждом коммите, а также удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов. Код Git распространяется под лицензией GPLv2+.

По сравнению с прошлым выпуском в новую версию принято 466 изменений, подготовленных при участии 70 разработчиков (21 впервые приняли участие в разработке Git). Основные новшества:

  • Добавлена возможность применения стратегии упаковки репозиториев "geometric" ("git repack --geometric") к частично клонированным внешним репозиториям, работающим в режиме "promisor" (недостающие объекты догружаются при необходимости). При переупаковке с опций "--geometric" pack-файлы с расширением ".promisor" обрабатываются и упаковываются отдельно. Стратегия "geometric" позволяет сократить время обслуживания крупных монорепозиториев, за счёт выборочной переупаковки объектов и исключения излишних ресурсоёмких операций, таких как слияние всех pack-файлов (сохраняется геометрическая прогрессия размера pack-файлов, при которой каждый следующий pack-файл должен быть как минимум в два раза больше предыдущего).
  • В команду "git fast-import" добавлена опция "--signed-commits=strip-if-invalid" для удаления цифровых подписей из импортируемых объектов, ставших некорректными после перезаписи части истории репозитория. До этого можно было либо импортировать, либо удалить все подписи, без разделения на действительные и потерявшие смысл. Опция "strip-if-invalid" позволяет реализовать инструменты для сохранения действующих подписей и переподписывания объектов с потерявшими актуальность подписями.
  • В вывод команды "git repo structure" добавлена информация о размере всех достижимых объектов (reachable) в репозитории с разбивкой по их типам. Информация теперь выводится в читаемом виде с единицами измерения и показывается отдельно для фактического и занимаемого на диске размеров, что позволяет оценить общий размер репозитория на диске.
    
       $ git repo structure
    
       | Repository structure | Value      |
       | -------------------- | ---------- |
       | * References         |            |
       |   * Count            |   1.78 k   |
       |     * Branches       |      5     |
       |     * Tags           |   1.03 k   |
       |     * Remotes        |    749     |
       |     * Others         |      0     |
       |                      |            |
       | * Reachable objects  |            |
       |   * Count            | 421.37 k   |
       |     * Commits        |  88.03 k   |
       |     * Trees          | 169.95 k   |
       |     * Blobs          | 162.40 k   |
       |     * Tags           |    994     |
       |   * Inflated size    |   7.61 GiB |
       |     * Commits        |  60.95 MiB |
       |     * Trees          |   2.44 GiB |
       |     * Blobs          |   5.11 GiB |
       |     * Tags           | 731.73 KiB |
       |   * Disk size        | 301.50 MiB |
       |     * Commits        |  33.57 MiB |
       |     * Trees          |  77.92 MiB |
       |     * Blobs          | 189.44 MiB |
       |     * Tags           | 578.13 KiB |
    
  • В команду "git maintenance" добавлена подкоманда "is-needed" для выполнения операций обслуживания репозитория только при наличии в этом необходимости.
  • В экспериментальной команде "git replay" по умолчанию реализовано обновление ссылок в транзакции, вместо показа, куда должны указывать ссылки, без обновления.
  • В команду "git blame" добавлена возможность выбора алгоритма оценки отличий при помощи опции "--diff-algorithm=<algo>".
  • В команду "git repo info" добавлена опция "--all".
  • Из Git-for-Windows перенесена поддержка символических ссылок для платформы Windows.

В состав прошлого выпуска было добавлено предупреждение о включении по умолчанию сборки компонентов на языке Rust в Git 2.53. Тем не менее, фактически в версии Git 2.53 лишь добавлены отдельные улучшения поддержки Rust (возможность сборки без GNU sed), но сборка с Rust при использовании Makefile оставлена по умолчанию отключённой (требует выставления флага WITH_RUST), а при использовании Meson автоматически активируется при наличии компилятора rustc. В версии Git 3.0 инструментарий Rust намерены включить в число обязательных сборочных зависимостей.

  1. Главная ссылка к новости (https://lore.kernel.org/lkml/x...)
  2. OpenNews: Выпуск системы управления исходными текстами Git 2.52
  3. OpenNews: В Git 3.0 предложено сделать Rust обязательной частью сборочной инфраструктуры
  4. OpenNews: Уязвимости в Git, допускающие выполнение кода при обращении к внешнему репозиторию
  5. OpenNews: Доступна децентрализованная система отслеживания ошибок git-bug 0.9
  6. OpenNews: Выпуск системы управления исходными текстами Git 2.51
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/64731-git
Ключевые слова: git
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 11:30, 03/02/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    https://github.com/git/git/blob/e83c5163316f89bfbde7d9ab23ca2e25604af290/READM
    Смотреть где "when it breaks"
    Лучше и не скажешь.
     
     
  • 2.10, Аноним (1), 12:18, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И - оттуда же:

    > Initial revision of "git", the information manager from hell

     

  • 1.2, Аноним (2), 11:44, 03/02/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –18 +/
    Хорошо, что продолжают обновлять этот легаси-проект, но смысла в 2к26 в нём нет уже (да и в 2к24 то немного было). Все реально опытные и грамотные инженеры давно на sapling или, в крайнем случае, на jj переехали. Git хорошо послужил обществу разработчиков, но его время ушло, как и у какого-нибудь C++, когда всё на Rust уже пишется быстро и без боли.
     
     
  • 2.3, Аноним (3), 11:49, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Jj это интерфейс к git. А sapling нет серверной части. RTFM сначала.
     
     
  • 3.4, Аноним (2), 11:54, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • –4 +/
    На сервере и не должно быть VCS. Туда изменения заливаются по CI/CD и таким образом достигается консистентность. Это база программирования и я, как лид, всегда в первую очередь в новой компании убираю эти костыли с гитами-меркурями на сервере. Ещё бы предложили по ftp файлы заливать, ну что вы в самом деле то, хоспади.

    А jj интерфейс, но он спокойно работает на условной 2.3 версии и не надо каждый месяц стремглав бежать обновлять git из-за того, что там придумали очередной ненужный никому кроме пары хипстеров флажок.

     
     
  • 4.11, Аноним (11), 12:33, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    CI как раз по комиту в git на сервере изменения и берет. Или как локальные правки предлагается отправлять?
    И как совместно работать без сервера когда много разработчиков со своими ветками?
    И зачем бежать обновлять git если не нужны одинаковые версии на сервере и клиенте или между разными клиентами?
    git это стандарт и пока лучше решения нету.
     
     
  • 5.22, Аноним (22), 13:16, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    CI берет не на том сервере, где production, а на том сервере, где CI. Gitlab runner, или своя портянка на баше - не важно. Важно, что это отдельная билд-среда.

    А на продакшен это попадает - ну, по вкусу. Можно tar | ssh, можно через контейнеры, если нравится.

     
  • 4.12, Аноним (12), 12:37, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Лид локалхоста имени себя? Что только не прочтешь тут в комментариях...
     
  • 4.14, Weders (ok), 12:44, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А потом идешь устраиваться в следующую компанию.
     
  • 4.17, OpenEcho (?), 12:49, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > На сервере и не должно быть VCS.

    А как же Sapling сервер???

     
  • 4.19, Аноним (12), 12:58, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > и я, как лид, всегда в первую очередь в новой компании убираю эти костыли с гитами-меркурями на сервере

    Я так понял из текста, что тебя часто увольняют за эти эксперименты? Сколько стартапов разорил такими приколами?

     
  • 4.26, localhostadmin (ok), 13:34, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > стремглав бежать обновлять git из-за того, что там придумали очередной ненужный никому кроме пары хипстеров флажок

    Обновояйся тогда, когда добавят нужный конкретно тебе флажок. В чем проблема?

     
  • 2.5, Кошкажена (?), 11:57, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +5 +/
    >  Все реально опытные и грамотные инженеры давно на sapling или, в крайнем случае, на jj переехали.

    Хорошо, что ты не разбираешься.

     
     
  • 3.7, Аноним (2), 12:02, 03/02/2026 Скрыто ботом-модератором     [к модератору]
  • –5 +/
     
  • 3.16, Грека (?), 12:48, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Пациент явно потроллить пришел. Это же очевидно.
     
  • 2.8, iii (??), 12:02, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    в шоке...
     
  • 2.9, Аноним (9), 12:02, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    "Все реально опытные и грамотные инженеры" это кто? ты с васяном с соседней парты? которые git от svn отличают только по названию исполняемого файла
     
  • 2.13, OpenEcho (?), 12:42, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Хорошо, что продолжают обновлять этот легаси-проект, но смысла в 2к26 в нём нет уже (да и в 2к24 то немного было).

    Гитхаб льёт реки слёз, а Сахарберг потирает ручки :)

     
  • 2.15, Аноним (15), 12:48, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >jj
    >написан на Rust
    >Windows 10 is the minimum supported version

    Напишите название компаний в которых вы внедряете jj я занесу их в черный список

     
  • 2.18, OpenEcho (?), 12:53, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > опытные и грамотные инженеры давно на sapling

    Но сам Sapling, по прежнему на... гитхабе

     
     
  • 3.20, User (??), 13:03, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Не, ну так-то между git и github ээээ... дистанция преизрядная. Претензия из разряда "А вот у Макска эккаунт в фейсбуке!"
     
     
  • 4.24, Аноним (24), 13:21, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Всё равно гит.
     
  • 4.25, OpenEcho (?), 13:23, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Я про "опытных и грамотных инженеров, которые давно на sapling" :)
     
  • 2.21, EmmGold (ok), 13:08, 03/02/2026 [^] [^^] [^^^] [ответить]  
  • +/
    На Rust переписываются однострочники энтузиастами. Т.е. то, что уже и так прекрасно работает.
     

  • 1.23, Аноним (24), 13:20, 03/02/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Единственная нормальная прога, которую написал Линус.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру