Programmierung

Oct 2, 2020

Ich habe einen Fehler in GIT gefunden - WAT? Die GIT-Lotterie

Ich habe einen Fehler in GIT gefunden - WAT? Die GIT-Lotterie

Ich habe einen Fehler in GIT gefunden - WAT? Die GIT-Lotterie

Sebastian Wilgosz

Ruby-Entwickler

Fliederblüte
Fliederblüte
Fliederblüte

Ich habe einen Fehler in GIT gefunden. Wie wahrscheinlich ist es, dass das passiert? Nennen Sie mir irgendeine Lotterie, die Sie sich vorstellen können, und ich kann immer noch argumentieren, ob es schwieriger ist, dabei zu gewinnen. Hier ist, wie es passiert ist...

Seit ich das Ruby/JS WAT?Video, ich sehe es immer vor meinen Augen, wenn ich meine persönlichen WATs in allen Bereichen meines Lebens entdecke. Und ich will immer darüber schreiben, also hier ist so ein Ding.

Ich'habe einen Fehler in GIT gefunden.

Wie wahrscheinlich ist es, dass das passiert? Nennen Sie mir irgendeine Lotterie, die Ihnen einfällt, und ich kann immer noch darüber streiten, ob es schwieriger ist, dabei zu gewinnen oder einen Fehler in GIT zu finden. Trotzdem - es ist mir passiert, und das Lustigste ist, dass es während der Arbeit an einer Blog-Anwendung passierte. Als ich daran gearbeitet habe, allein!

keine großen Teams, Zusammenführungen, übergeordnete Geschichte... nichts. Nur grundlegende Funktionen wurden dort verwendet.

Hier ist es passiert...

Für Leute, die 'das Wort WAT

React blog application

{

Ich wollte my blog von Nuxt (Vue.js) zu Next (React.js), um ein sehr seltsames Verhalten im Zusammenhang mit dem Nuxt-API-Proxy zu testen.

Während der Entwicklung habe ich festgestellt, dass ich eine der Dateien der Komponente' falsch benannt habe - Logo.js instead of logo.js. Keine große Sache, könnte man sagen. Benennen Sie es einfach um, übertragen Sie die Änderungen und voila! Sie sind fertig.

Allerdings lief nicht alles so reibungslos.

Modul nicht gefunden

Das kontinuierliche Integrationstool - in diesem Fall war es ein Now von Zeit - meldete, dass der Pfad zu meiner logo Komponente nicht gefunden werden konnte.

I was stunned. Ok, ich hatte erwartet, dass ich irgendwo im import oder im Dateinamen einen Tippfehler habe, aber das war nicht der Fall'.

Meine Komponenten-Dateiliste war sehr klein und flach, es gab keinen Platz für einen Fehler:

Komponenten-Dateiliste in Driggl's Blog-Anwendung

Das gleiche galt für den Importteil, wo ich nur die Datei aus denselben Ordnern importieren musste, während ich nur diese eine Zeile für den Import der Logo-Komponente hatte:

Das Seltsamste war, dass eigentlich alles lokal funktionierte und es nur beim Deployment in die Produktion abstürzte.

Ich war wirklich verwirrt, bis ich'meinem Teamkollegen den Code zeigte. Er hatte das Repository geklont und wir stellten fest, dass die Logokomponentendatei falsch benannt war, obwohl ich keine unbestätigten Änderungen hatte!

GIT has issues.

Es war eine wirklich interessante Entdeckung, dass, als ich den GIT-Mechanismus überprüft habe, es mir gezeigt hat, dass GIT das Umbenennen von Dateien nicht erkennt, wenn die einzige Änderung, die man im Dateinamen vornimmt, die Großschreibung des Buchstabens ist!

Also, obwohl ich die logoDatei umbenannt hatte, hat GIT'das nie bemerkt! Ich sah aus wie:

und hier bin ich - WAT?

Try it yourself:

Dann spielen Sie ein wenig mit dem Dateinamen:

Hat sich für Sie etwas geändert?

Nun versuchen Sie, die abgestuften Änderungen zurückzusetzen und überprüfen Sie den Status erneut:

Voila! Das GIT hat auf magische Weise den Dateinamen erkannt!

Takeaways

This kleine Erfahrung hat mich gelehrt, dass jeder manchmal fehlerhaften Code schreibt. Wir sollten nie davon ausgehen, dass irgendetwas perfekt ist, denn jeder kleine Teil der Software, die wir benutzen, wird von einem Menschen geschrieben. Und Menschen können Fehler machen.

Und, wenn es um GIT geht, machen Sie einfach immer - IMMER die Überprüfung Ihrer eigenen Änderungen.

Ich schreibe gelegentlich über GIT-Hacks und -Tricks{ENTITY_253}}/a>, aber das hier war das Interessanteste, was ich in den letzten Jahren gefunden habe.

✍️

ABOUT THE AUTHOR

Sebastian Wilgosz

Ruby-Entwickler

Ruby-Enthusiast, Kaffeeliebhaber und Produktivitätsfanatiker. Ich liebe es, kreative Wege zu finden, um alles, was ich tue, zu verbessern.

Sie haben eine Projektidee? Lassen Sie uns darüber reden und sie zum Leben erwecken

Ihre hochqualifizierten Spezialisten sind da. Nehmen Sie Kontakt auf, um zu sehen, was wir gemeinsam tun können.

Dariusz Michalski

Dariusz Michalski, CEO

dariusz@useo.pl

Konrad Pochodaj

Konrad Pochodaj, CGO

konrad@useo.pl

Sie haben eine Projektidee? Lassen Sie uns darüber reden und sie zum Leben erwecken

Ihre hochqualifizierten Spezialisten sind da. Nehmen Sie Kontakt auf, um zu sehen, was wir gemeinsam tun können.

Dariusz Michalski

Dariusz Michalski, CEO

dariusz@useo.pl

Konrad Pochodaj

Konrad Pochodaj, CGO

konrad@useo.pl

Sie haben eine Projektidee? Lassen Sie uns darüber reden und sie zum Leben erwecken

Ihre hochqualifizierten Spezialisten sind da. Nehmen Sie Kontakt auf, um zu sehen, was wir gemeinsam tun können.

©2009 - 2025 Useo sp. z o.o.