Hallo allerseits,

Arno Trautmann schrieb am 28.03.2009 14:48 Uhr:
Das ist löblich, aber doch dafür etwas übertrieben? Alle Daten kannst du doch 
auch direkt aus dem Browser kopieren?…

Ja klar, das wäre die problemlos mögliche einfache Variante gewesen. Aber nachdem hier auf der Liste so viele inbrünstig die Vorteile von Git gepriesen haben, war das einfach ein guter Vorwand, um sich doch nochmal an Git heranzuwagen. Die Einstiegshürde ist für einen Windows-Nutzer ja doch höher als bei SVN (da musste ich jedenfalls nicht in einer Konsole irgendwelche Befehle eintippen, um einen SSH-Key zu generieren ;-)).

Paul Menzel schrieb am 28.03.2009 15:54 Uhr:
Konntest Du schon einen Blick auf [http://git.or.cz/course/svn.html] werfen?

Inzwischen habe ich das, vielen Dank für den Link. Diese Anleitung hat mir tatsächlich etwas weitergeholfen.

Ganz besonders möchte ich jedoch Bernd für seine Ausführungen danken :-), ich glaube inzwischen auch dass meine Probleme vom Umdenken in ein /verteiltes/ Versionsverwaltungsſystem herrühren.

Wenn ich das jetzt richtig verstanden habe, sind bei Git prinzipiell alle Repositories gleichwertig (im Gegensatz zu SVN, wo es ein zentrales »primäres« Repository gibt); deshalb hat beispielsweise auch jedes Repo ein eigenes Log. Der jeweils aktuellste Zustand eines Repos als »Master« bezeichnet. • Insbesondere wirken also »Add« und »Commit« stets nur /lokal/ auf das eigene Repository.
• Fetch, Pull und Push hingegen dienen der Abgleichung verschiedener Repos.

Mit Fetch erhalte ich die Änderungen einen fremden Repos sozusagen »nur zur Kenntnis«, die ich dann (oder auch nicht) mit Merge in mein Repo übernehmen kann. Pull = Fetch ∘ Merge entspricht also am ehesten einem SVN-update.

Was den umgekehrten Weg angeht: Ich kann also erst lokal in meinem Repo mehrere »kleinschrittige« Commits erstellen, dann fetchen/mergen (um sicherzustellen, dass es keine Konflike gibt) und dann meine Commits »in einem Rutsch« an das andere Repo pushen (wenn es das denn zulässt). Bei SVN hingegen muss man für jedes Commit mit dem zentralen Repo verbunden sein.

Ich glaube, jetzt habe ich es so einigermaßen verstanden :-)


Viele Grüße,
Dennis-ſ

Antwort per Email an