Назад
SiTech
Git 2.56 незабаром — і наступним релізом може стати Git 3.0
SiTech AI Team3 წთ. საკითხავი

Git 2.56 незабаром — і наступним релізом може стати Git 3.0

Git 2.56 перебуває на стадії кандидата в реліз і містить понад 700 комітів. Тим часом супровідник Джуніо Хамано вирішує, чи стане наступний реліз довгоочікуваним Git 3.0 з переходом на SHA-256 і reftable.

Git 2.56 на стадії кандидата в реліз

Реліз Git 2.56 очікується близько кінця вересня 2026 року, і зараз він доступний як кандидат у реліз. Він містить понад 700 комітів, не пов'язаних із злиттями, і, як пише Джонатан Корбет із LWN, приносить низку приємних покращень, не змінюючи принципово роботу з Git.

Найцікавіше нововведення — підкоманда drop у все ще експериментальному наборі інструментів git history: команда git history drop commit-id вилучає вказаний коміт з історії поточної гілки та повторно відтворює всі коміти, додані після нього. Команда досі відмовляється працювати, якщо в історії є коміти злиття, що робить її непридатною для багатьох репозиторіїв.

Зміни для зручності

git status тепер пропонуватиме команду git pull для оновлення гілки, яка відстає від тієї, за якою вона стежить. Низькорівнева команда git refs отримала нові підкоманди — create, delete, update та rename, — які роблять саме те, що обіцяють їхні назви.

Нова опція --delete-merged для git branch видаляє локальні гілки, вже злиті з їхніми віддаленими відстежуваними гілками. git add отримав опцію --resolved, яка додає лише файли з розв'язаними конфліктами злиття.

Після 2.56: питання Git 3.0

На початку вересня супровідник Git Джуніо Хамано запитав спільноту, чи має наступний реліз бути 3.0, чи все ще потрібні додаткові випуски 2.x. Питання важливе, адже 3.0 міститиме порушення сумісності; найбільше з них — перехід на хеш SHA-256 замість SHA-1 за замовчуванням.

Неекспериментальна підтримка SHA-256 з'явилася в Git ще у версії 2.42 у 2023 році, але перехід стримувала відсутність підтримки на великих майданчиках хостингу: GitLab підтримує її з 2024 року, Forgejo — теж, а GitHub залишається помітним винятком.

Брайан М. Карлсон, співробітник GitHub і ключовий розробник цього переходу, сказав, що новини на цю тему незабаром будуть, і що наступним релізом, імовірно, найкраще зробити 3.0. Він також хотів би, щоб до виходу 3.0 Git відкидав ідентифікатори об'єктів у верхньому регістрі.

Ще одна зміна чекає на 3.0 — перехід на reftable, бінарний формат зберігання посилань, доданий у Git 2.45; механізм на основі файлів стає неефективним зі зростанням кількості посилань, а репозиторій Android містить понад 800 000 з них. Інші програми, які працюють із репозиторіями, мусять наздогнати: у libgit2 підтримку reftable вже додано. Проєкт також планує зробити Rust обов'язковим для збірки Git, що позбавить платформи без робочого компілятора Rust можливості оновлюватися.

Карлсон наполягає, що ці питання не повинні затримувати реліз, а репозиторії з SHA-1 і без reftable й надалі повністю підтримуватимуться. Хамано ще не оголосив рішення, описавши процес словами: «це не конкурс популярності і навіть не демократія». Якщо 3.0 не вийде 2026 року, він з'явиться незабаром після цього.

SSiTech

SiTech — веброзробка з підтримкою AI

Створюємо швидкі та сучасні сайти й інтегруємо AI у бізнес-процеси. Маєте проєкт чи запитання? Із задоволенням допоможемо.