Tool-Tipp

GitHub Super Linter – einer für alle

(Foto: Shutterstock)

Ein großes Mono-Repo mit allen benötigten Tools und Lintern zu konfigurieren, kann dauern – und nerven. Mit dem Super Linter hat GitHub jetzt ein bislang intern genutztes Tool zu Open Source gemacht, das diese Aufgabe vereinfachen soll.

Ein Linter ist ein Tool zur statischen Code-Analyse. Er kommt in der Softwareentwicklung zur Sicherung der Code-Qualität zum Einsatz. Für verschiedene Programmiersprachen gibt es verschiedene Linter, unter Web-Entwicklern ist ESLint wohl der bekannteste. Kommen in einem Projekt mehrere Programmiersprachen zum Einsatz, werden dafür entsprechend mehrere Linter benötigt.

Um die Konsistenz des unternehmenseigenen Codes und dessen Doku sicherzustellen, hat GitHubs Services-Devops-Team mit dem GitHub-Super-Linter ein Tool gebaut, das diese Aufgabe vereinfachen soll. Über den Super-Linter sollen viele Anforderungen automatisiert werden können. So verhindert das Tool, dass fehlerhafter Code in den Masterbranch eines Projektes gemerged wird, hilft bei der Etablierung von Best Practices beim Schreiben von Code über verschiedene Programmiersprachen hinweg und erstellt Richtlinien für Layout und Formatierung. Außerdem soll der Super Linter unter anderem dabei helfen, den Ablauf von Code-Reviews zu streamlinen.

Was genau steckt dahinter?

Der Super Linter ist ein in einen Docker-Container verpacktes Source Code Repository, das über GitHub Actions aufgerufen wird. Jedes auf github.com befindliche Repo soll das Tool aufrufen können. Bereits jetzt unterstützt der Super Linter eine Reihe von Programmiersprachen, weitere sollen in Kürze folgen.

So funktioniert’s

Wenn ihr euer Repo für die Nutzung der Action konfiguriert habt, soll der Super Linter euch jedes Mal, wenn ihr einen Pull Request öffnet, wissen lassen, ob eure Code-Änderungen der Prüfung standhielten und wenn nicht, welche Fehler wo entdeckt wurden. So könnt ihr einfach in eurem jeweiligen Branch die Issues fixen und einen neuen Push an den offenen Pull Request vornehmen, was bewirkt, dass der Super Linter erneut ausgeführt und der Prozess wiederholt wird. Wer will, kann zusätzlich die Branch Protection Rules so konfigurieren, dass ein Mergen von fehlerhaftem Code unmöglich wird. Laut Blogpost auf dem offiziellen GitHub-Blog gibt es zudem tonnenweise Möglichkeiten, den Super Linter über Flags und Templates passgenau für euer individuelles Repository zu konfigurieren, das Repo zum Projekt und das Super-Linter-Wiki bieten detaillierte Anweisungen dazu.

Macht doch, was ihr wollt!

Entwickler und Entwicklerinnen entwickeln im Verlauf ihrer Karriere jeweils ihren eigenen Programmierstil. Deshalb sollen Nutzer des Super Linters weitestgehend selbst entscheiden können, von welchen Regeln sie Gebrauch machen, für den Anfang sind allerdings je nach verwendeter Programmiersprache einige Standardregeln gesetzt, die sich in manchen Fällen an dem orientieren, was der Default für das jeweilige Projekt wäre, für andere wurde versucht, einen Mittelweg einzuschlagen. Entwickler-Teams, denen das nicht reicht, haben jedoch alle Freiheit, die Regeln des Super Linters nach Bedarf anzupassen.

Ebenfalls interessant: Wegen Bezug zur Sklaverei: GitHub will Master durch neutralen Begriff ersetzen

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Schreib den ersten Kommentar!

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!

Hey du! Schön, dass du hier bist. 😊

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team bestehend aus 65 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Danke für deine Unterstützung.

Digitales High Five,
Stephan Dörner (Chefredakteur t3n.de) & das gesamte t3n-Team

Anleitung zur Deaktivierung