عاجل
CN資深媒體人矢板明夫遭中國籍男子揮拳攻擊 陸委會:首宗跨境鎮壓案CN中聯油脂大豆沙拉油檢出致癌物苯駢芘超標,逾360家業者受影響INVessel Runs Aground Off Manori Beach, Mumbai Amid Heavy RainRUВзрывные устройства ВСУ в Рыльске: глава района и еще пять человек пострадалиCN華通擴產搶攻AI訂單 6月營收創同期新高TRRumeyş Belediye Başkanı: Netanyahu'nun Lübnan'la İlgili Açıklamaları AsılsızRUGuardian journalist: UEFA plans to replace FIFA President InfantinoCN第三届雄安国际金融科技创新技术应用大赛决赛在雄安新区举办RUСупертайфун «Бави» приближается к ОкинавеRUСША выступают против нового наступления ВСУ и настаивают на оборонительной тактикеCN資深媒體人矢板明夫遭中國籍男子揮拳攻擊 陸委會:首宗跨境鎮壓案CN中聯油脂大豆沙拉油檢出致癌物苯駢芘超標,逾360家業者受影響INVessel Runs Aground Off Manori Beach, Mumbai Amid Heavy RainRUВзрывные устройства ВСУ в Рыльске: глава района и еще пять человек пострадалиCN華通擴產搶攻AI訂單 6月營收創同期新高TRRumeyş Belediye Başkanı: Netanyahu'nun Lübnan'la İlgili Açıklamaları AsılsızRUGuardian journalist: UEFA plans to replace FIFA President InfantinoCN第三届雄安国际金融科技创新技术应用大赛决赛在雄安新区举办RUСупертайфун «Бави» приближается к ОкинавеRUСША выступают против нового наступления ВСУ и настаивают на оборонительной тактике
Newsgather
BackGit 2.54 veröffentlicht: Neuer Befehl git history und flexiblere Hooks
Git 2.54 veröffentlicht: Neuer Befehl git history und flexiblere Hooks
تقنية
Heise Online21.04.2026تقنية1 dk okumaGermany

Git 2.54 veröffentlicht: Neuer Befehl git history und flexiblere Hooks

Das aktuelle Release des Versionsverwaltungssystems führt experimentelle Funktionen zur Historienbearbeitung und eine zentrale Hook-Konfiguration ein.

نظرة سريعة

  • Git 2.54 wurde veröffentlicht und bringt mit dem experimentellen Befehl 'git history' eine vereinfachte Möglichkeit zur Anpassung der Commit-Historie.
  • Zudem ermöglichen neue Konfigurationsoptionen eine flexiblere und zentralere Verwaltung von Git-Hooks.

ملخص مُنشأ بالذكاء الاصطناعي

لماذا يهم

Git ist ein weit verbreitetes verteiltes Versionsverwaltungssystem. Hooks sind Skripte, die bei bestimmten Git-Ereignissen automatisch ausgeführt werden.

حجم الخط

Das verteilte Versionsverwaltungssystem Git 2.54 ist erschienen. Ein experimenteller git history-Befehl und ein veränderter Umgang mit Hooks zählen zu den wichtigsten Neuerungen in dem Release, an dem 137 Personen mitgewirkt haben.

Commit-Historie verändern mit git history

Wie GitHub in einem Blogeintrag ausführt, bot Git bisher bereits Möglichkeiten, die Historie eines Projekts zu verändern. So lassen sich mit git rebase -i Commits anders anordnen, editieren oder verwerfen. Das ändert jedoch auch Working Tree und Index, was weitreichende Aktionen nach sich ziehen kann.

Für einfache Fälle steht daher nun der experimentelle Befehl git history bereit, der unter der Haube auf der Funktionsweise von git replay basiert. git history unterstützt die beiden Vorgänge reword und split. Mit git history reword <commit> können Entwicklerinnen und Entwickler eine Commit-Nachricht im Editor öffnen und anpassen, um zum Beispiel einen Tippfehler zu berichtigen. Das aktualisiert ebenfalls Branches, die aus diesem Commit hervorgehen. Im Gegensatz zu git rebase verändern sich Working Tree und Index hierbei jedoch nicht. Die zweite mögliche Aktion, git history split <commit>, erlaubt das Aufteilen eines Commits in zwei verschiedene Commits.

Zu den bewussten Einschränkungen des history-Befehls zählt, dass er weder mit Historien umgehen kann, die Merge Commits enthalten, noch Vorgänge durchführt, die Merge-Konflikte auslösen würden.

Flexiblere Hook-Definition

Eine weitere bedeutende Neuerung betrifft den Umgang mit Git-Hooks. Diese ließen sich bisher nur als ausführbare Skripte definieren, die sich in einem spezifischen Verzeichnis befanden – standardmäßig im Unterverzeichnis hooks des .git-Verzeichnisses. Das brachte einige Schwierigkeiten mit sich, wie GitHub erläutert: Wollten Entwickler beispielsweise vor jedem Commit auf allen Repositories einen Linter laufen lassen, so mussten sie das entsprechende Skript in jedes Repository kopieren, was zu Arbeitsaufwand und Fehleranfälligkeit führte.

Diese Probleme soll Git 2.54 lösen, denn Hooks lassen sich nun in den Konfigurationsdateien definieren. Statt ein Skript in .git/hooks/pre-commit zu platzieren, ist nun diese Alternative möglich:

[hook "linter"] event = pre-commit command = ~/bin/linter --cpp20

Auf diese Weise lassen sich Hooks zentral definieren und auf alle Repos anwenden. Eine solche Konfiguration kann sich User-basiert in ~/.gitconfig befinden, systemweit in /etc/gitconfig oder in einer lokalen Konfigurationsdatei eines Repositories. Entwicklerinnen und Entwickler können zudem mehrere Hooks für ein bestimmtes Event definieren oder Hooks wahlweise in einem Repository deaktivieren.

Weitere Informationen zu diesen und anderen Neuerungen in Git 2.54 finden sich in den Release Notes.

ما الذي يجب مراقبته

توقعات الذكاء الاصطناعي — احتمالات وليست حقائق

  • Entwickler werden den neuen 'git history'-Befehl in ihren Workflows testen.

    مرجح · خلال أسابيع

أسئلة مفتوحة

  • Wann wird der 'git history'-Befehl den experimentellen Status verlassen?

مواضيع ذات صلة

This article was originally published by Heise Online.

أخبار ذات صلة

المزيد حول هذا الموضوعgit