Випущено Git 2.56: покращення продуктивності для великих репозиторіїв
Випущено Git 2.56: покращення продуктивності для великих репозиторіїв
Git 2.56 був випущений, представляючи покращення робочого процесу разом із суттєвими змінами продуктивності, особливо для великих репозиторіїв.
Нові можливості з git add –resolved
Однією з основних новинок є новий параметр git add --resolved. Він дозволяє ставити файли після усунення конфліктів злиття, уникаючи випадкових змін у робочій дереві. Git також перевіряє наявність залишкових маркерів конфліктів перед постановкою, що допомагає уникати помилок під час вирішення конфліктів.
Спрощення роботи з гілками і їх видалення
Випуск включає в себе режим git branch --delete-merged, що спрощує очищення локальних гілок, які вже злилися в upstream. Git 2.56 також розширює команду git refs, підтримуючи створення, оновлення, видалення та перейменування посилань.
Експериментальні команди для роботи з історією
Щодо історії, експериментальна команда git history отримала нову операцію drop для видалення коміту та відтворення пізніших комітів поверх його батька. Експериментальна команда git replay також додає опцію --linearize.
Покращення продуктивності та обслуговування репозиторіїв
GitHub повідомляє про суттєві покращення у обчисленнях merge-base та інших операціях на дуже великих репозиторіях, деякі навантаження демонструють драматичне скорочення часу виконання.
Автоматизація та підказки
Обслуговування репозиторіїв стало кращим, оскільки repack з підтримкою оптимізації суттєво знижує вимоги до зберігання в деяких випадках. Додатково, команда git bisect run тепер може автоматично скинути себе, знайшовши проблемний коміт. Git також надає кращі підказки для частих помилок у git push, а часткові клони отримали вдосконалені способи скидання великих локально кешованих об’єктів, які можна завантажити пізніше.
Інші вдосконалення у Git 2.56
Нарешті, Git 2.56 включає в себе покращення у git log --follow, відображенні графіки та кілька внутрішніх виправлень для підвищення масштабованості, що має на меті поліпшити поведінку Git з дуже великими кодовими базами.
Для отримання додаткової інформації можна переглянути оголошення.




