Git-Pull - was sollte passieren?

Dsimon24

Lieutenant
Registriert
Aug. 2016
Beiträge
595
Moin zusammen,

ich versuche gerade ein wenig Git zu verstehen.

Folgendes Szenario:
Ich erstelle ein PHP-Projekt, erstelle ein Commit mit allen entsprechenden
Dateien und pushe es in ein Remote-Repository. Soweit schick.

Bspw. pushe ich das File index.php mit dem Inhalt:
<?php echo "TestFile"; ?>

Wenn ich das File nach dem Push verändere und dann 'git pull' ausführe, müsste doch
wieder der ursprüngliche iNhalt erscheinen, oder verstehe ich da etwas falsch? Bei mir
ändert sich nach einem Pull nämlich nichts.

VG, David
 
Mit git pull ziehst du die aktuellen Dateien aus dem Rep.

Also du lädst und integrierst die im Rep gespeicherten Änderungen in deine lokale Kopie.
 
Eben, die Datei hat auf dem Server keine Änderung, deshalb bleiben deine Änderungen erhalten. Wäre auf anderem Weg noch eine Änderung in die Datei gekommen, würde Git beim Pull automatisch mergen wenn möglich oder dich manuell mergen lassen.

Edit: Wobei die Formulierung "ziehst du die aktuellen Dateien" etwas irreführend ist. Man zieht nur die "Änderungen". Deshalb bleibt die Datei auch unverändert nach dem Pull.
 
Zuletzt bearbeitet:
Ein git pull überschreibt nicht mutwillig Änderungen von dir, stattdessen wird git dich auffordern, die Veränderung entweder erstmal zu committen oder zu stashen (quasi verwerfen beiseite packen), denn schließlich hast du durch die Veränderung der Datei keinen gültigen Versionsstempel auf der Datei, solange du diese Änderung nicht in git einpflegst. Folglich wäre dadurch auch kein mergen möglich.
 
Zuletzt bearbeitet:
Crizzo schrieb:
Git pull ist quasi:

git fetch <remote-server> (<branch>)
git merge <remote-server/<branch>
Wobei der fetch dann ja ergibt, dass es keine Änderungen gab und es somit nicht zu einem merge kommt afaik.

Grimba schrieb:
erstmal zu committen oder zu stashen (quasi verwerfen)
Ein Stash ist eine Ablage und an sich erst mal kein Mülleimer ;).
 
  • Gefällt mir
Reaktionen: Grimba
Ja das ist richtig, ich war da zu unpräzise. Wird aber häufig so verwendet, um erstmal den Workspace clean zu bekommen. Aber richtig, dadurch gehen die Änderungen bewusst NICHT verloren, daher ist "verwerfen" von mir defintiv falsch! ich ändere das
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: BeBur
Lässt sich in Git auch nur der aktuelle Code pullen, also ohne History? Habe bisher einmal mit Git gearbeitet und da war nach dem Pull das Projekt mit allen Veränderungen im lokalen Ordner (Übergröße). Da ich sonst immer TFS nutze bin ich es gewohnt das Projekt im Ist-Zustand auf der Platte zu haben und der Verlauf bleibt auf dem Server.
 

Ähnliche Themen

Zurück
Oben