Git 2.37 вже вийшов, і це його новини

Запуск нова версія Git 2.37, який є одним із найпопулярніші системи контролю версій, надійне та високопродуктивне програмне забезпечення, яке надає гнучкі інструменти нелінійної розробки на основі форків та злиття форків.

Для забезпечення цілісності історії та стійкості до змін у кожному коміті використовується «зворотний» неявний хеш усієї попередньої історії, також можна перевірити цифрові підписи окремих розробників тегів та комітів.

Ключові нові можливості Git 2.37

Порівняно з попередньою версією, У новій версії прийнято 395 змін, підготовлено за участю 75 розробників, з яких 20 брали участь у розробці вперше.

У цій новій версії це підкреслено механізм часткових індексів (розріджений індекс), який охоплює лише частину сховища, сe підготовлено для широкого використання. Часткові індекси можуть підвищити продуктивність і заощадити місце в репозиторіях, які виконують операції часткового клонування (розріджена перевірка) або працюють з неповною копією сховища.

Нова версія завершує роботу інтеграція часткових індексів у команди "git show", "git sparse-checkout" і "git stash". Найбільш помітний приріст продуктивності від використання часткових індексів спостерігається в команді "git stash", яка в деяких ситуаціях до 80% швидше.

Ще одна зміна, яка виділяється, полягає в тому, впроваджено новий механізм «крафт-паків». для упаковки недоступних об’єктів, на які немає посилань у сховищі (на які посилаються гілки чи теги). Збірник сміття видаляє недоступні об’єкти, але вони залишаються в сховищі протягом певного часу перед їх видаленням, щоб уникнути умов гонки. Для відстеження періоду недоступних об’єктів необхідна прив’язка, вони позначаються часом зміни подібних об’єктів, що не дозволяє зберігати їх у пакетному файлі, в якому всі об’єкти мають загальний час модифікації.

Зберігаючи кожен раніше використовуваний об'єкт в окремому файлі, файл викликав проблеми при наявності великої кількості нових недоступних об'єктів, поки немає. Запропонований механізм «cruft pack» дозволяє зберігати всі недоступні об’єкти в пакетному файлі, а дані про час модифікації кожного об’єкта відображаються в окремій таблиці, що зберігається у файлі з розширенням «.mtimes».

Для Windows і macOS є вбудований механізм для відстеження змін у файловій системі, яка усуває необхідність перераховувати весь робочий каталог при виконанні таких операцій, як "git status". Раніше, щоб відстежувати зміни через хуки, ви могли підключати зовнішні утиліти відстеження змін файлової системи, такі як Watchman, але це вимагало встановлення додаткових програм і конфігурацій. Ця функція тепер вбудована і її можна ввімкнути за допомогою «git config core.fsmonitor true».

Команда "git sparse-checkout" відмовився від підтримки альтернативи режиму "--cone". визначення шаблону для часткового клонування, що дозволяє при визначенні частини сховища, що підлягає операції клонування, перераховувати окремі файли за допомогою синтаксису «.gitignore», що не дозволяє використовувати для оптимізації часткових індексів.

З інших змін що виділяються:

  • Покращена гнучкість у налаштуванні виклику fsync() для скидання змін на диск.
  • До параметра «core.fsyncMethod» додана підтримка стратегії пакетної синхронізації, яка прискорює роботу під час запису великої кількості окремих файлів за рахунок накопичення змін у кеші перезапису, очищених одним викликом fsync().
  • Команди обходу, такі як «git log» і «git rev-list», тепер мають опцію «–since-as-filter=X» для фільтрації інформації про коміти, старші за «X».
  • У команді "git remote" вказівка ​​прапора "-v" надає інформацію про часткові клони сховища.
  • Додано налаштування "transfer.credentialsInUrl", яке може приймати значення "warn", "die" і "allow". Якщо параметр “remote. .url" вказує облікові дані у вигляді простого тексту, спроба виконати операції "отримання" або "натиснення" завершиться невдачею, якщо для параметра "transfer.credentialsInUrl" встановлено значення "die", або попередження, якщо встановлено значення "warn" .
  • За замовчуванням використовується нова реалізація інтерактивного режиму команди "git add -i", переписана з Perl на C.

В кінці кінців якщо вам цікаво дізнатись більше про це, Ви можете перевірити деталі У наступному посиланні.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.