Zunächst einmal ist Git scheiße. Ich weiß, ich weiß, es soll das Beste seit geschnittenem Brot sein, aber es ist scheiße. Es ist, als würde man versuchen, sich mit einer Kettensäge zu rasieren: Ein kleiner Fehler, und überall sind Blut und Zähne. Vielleicht, wenn ich tatsächlich eine genaue Unterscheidung zwischen einem Kopf, einem Schiedsrichter, einem Commit, einem Zweig, einem Stamm, einem Gnargel und einem Whizpoo machen könnte, wäre einiges davon vielleicht etwas einfacher, aber für einen gewöhnlichen Sterblichen mit nur 10 Jahren Erfahrung mit SVN, Perforce und RCS sieht alles nach ziemlich verschrobener schwarzer Magie aus.
Jetzt aus irgendeinem Grund, git pull
hat bei mir noch nie funktioniert. Ich erhalte eine 10-zeilige Fehlermeldung, die bisher ungefähr so hilfreich war wie das Wort “Fehler”. Das Googeln der Fehlermeldung ergab eine Vielzahl von Vorschlägen, denen nur gemeinsam war, dass sie keinerlei offensichtliche Auswirkungen hatten. Aber das ist nicht das Problem von heute: Ich habe mich ans Tippen gewöhnt git pull origin branch
.
Heute bin ich zwischen zwei Zweigen “Master” und “Lounge” hin und her geblättert und war im Moment im Master-Zweig. Ich wollte die neuesten Änderungen aus dem Remote-Repository in das lokale übertragen, habe mich aber vertippt. Anstatt zu schreiben git pull origin master
Ich schrieb git pull origin lounge
und dann, ohne nachzudenken, den richtigen Befehl eingetippt.
Es gibt keine Hinweise auf das erste (schlechte) Einzugsprotokoll, nur zwei Zusammenführungen vom Master:
commit 0c6be9569bab0581244ea8603bf2edfee82cdd7b
Merge: 43fdec5... db09f0d...
Author: Malvolio <[email protected]>
Date: Wed Nov 24 20:38:58 2010 -0500
Merge branch 'master' of github.com:xcompanyx/xRepositoryX
commit db09f0d79d744d6a354142041b47ff5d748999f3
Merge: 81b6c3d... fc73e25...
Author: Malvolio <[email protected]>
Date: Wed Nov 24 17:38:16 2010 -0800
Merge branch 'master' of github.com:xcompanyx/xRepositoryX
commit 81b6c3d04b7c464f8750a56282635526a5ef83a1
Author: Michael <[email protected]>
Date: Wed Nov 24 17:38:07 2010 -0800
the last commit I did
Aber Dateien, die neu im Lounge-Zweig erstellt wurden, befinden sich in meinem Repository.
Also bin ich jetzt fscked, oder? Soll ich einfach mein Repository abfackeln, die Fernbedienung erneut klonen, alle nicht gepushten Änderungen manuell erneut anwenden und es Git-Saugerei zuschreiben, oder gibt es eine Beschwörung, die ich rezitieren kann, die alles besser macht? Würde es helfen, wenn ich eine Ziege opfere?
@Robert – Aber dann würde ich nicht so ein nettes Lachen bekommen.
– John Kugelmann
25. November 2010 um 2:10 Uhr
Ich würde gerne versuchen, Ihnen zu helfen, aber Sie haben die Hälfte Ihres Posts damit verbracht, das SCM anzugreifen, von dem Sie fragen, wie es verwendet werden soll, und es versäumt, tatsächlich genügend Informationen bereitzustellen, um Ihre Frage zu beantworten. Willst du wirklich Hilfe oder nur schimpfen?
– Kaskabel
25. November 2010 um 3:54 Uhr
Ich sollte darauf hinweisen, dass 10 (oder sogar 20) Jahre Erfahrung mit zentralisiert VCS wie
svn
undp4
(Wir ignorierenrcs
– Ich fühle mich wohltätig) helfen bei der Anwendung nicht wirklichgit
. Es ist ein anderes Paradigma und erfordert, dass Sie einen anderen Satz von Abstraktionen kennen.– Noufal Ibrahim
25. November 2010 um 6:11 Uhr
Diese Frage und Antwort war tatsächlich hilfreich für mich. Schade, dass es geschlossen und nicht einfach bearbeitet wurde.
– davenpcj
23. Februar 2011 um 5:49 Uhr
Die Empfindlichkeit einiger Open-Source-Leute ist für mich immer eine Quelle (ziemlich gemeiner, ich gestehe) Belustigung. Sechs Personen schlossen eine Frage als „unbeantwortbar“ ab, die von mindestens neun Personen positiv bewertet wurde und auf die zwei Personen tatsächlich (fast identische und richtige) Antworten gaben!
– Michael Lorton
24. Februar 2011 um 3:00 Uhr