Lernpfad:Einführung in Git/4: Unterschied zwischen den Versionen
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 28: | Zeile 28: | ||
{{Info:Start}} | {{Info:Start}} | ||
Wenn du keine Fehlermeldung bekommst, dann kannst du mit dem {{PfadNext| | Wenn du keine Fehlermeldung bekommst, dann kannst du mit dem {{PfadNext|nächsten Schritt}} weiter machen. Ansonsten besteht ein Konflikt, weil schon jemand anderes Änderungen gepushed hat. Wie du damit umgehst erfährst du weiter unten. | ||
{{Info:End}} | {{Info:End}} | ||
| Zeile 39: | Zeile 39: | ||
[[Datei:Fork conflict 1.jpg|center|frame]] | [[Datei:Fork conflict 1.jpg|center|frame]] | ||
Links wird angezeigt, dass es sowohl Änderungen auf dem zentralen Server gibt, als auch in der lokalen Kopie. Um das Problem zu beheben klicke oben auf "Resolve". | Links wird angezeigt, dass es sowohl Änderungen auf dem zentralen Server gibt, als auch in der lokalen Kopie (Pfeile nach oben/unten). Um das Problem zu beheben klicke oben auf "Resolve". | ||
Wähle eine Datei mit einem Konfilkt und dann "Merge in Fork". | Wähle eine Datei mit einem Konfilkt und dann "Merge in Fork". | ||
| Zeile 45: | Zeile 45: | ||
[[Datei:Fork merge 1.jpg|center|frame]] | [[Datei:Fork merge 1.jpg|center|frame]] | ||
Es wird nun ein zwei geteiltes Fenster angezeigt, in dem die beiden in konflikt stehenden Versionen der Dateien nebeneinander angezeigt werden. Du kannst | Es wird nun ein zwei geteiltes Fenster angezeigt, in dem die beiden in konflikt stehenden Versionen der Dateien nebeneinander angezeigt werden. Du kannst jetzt für jede Zeile entscheiden, welche Version in der Datei behalten werden soll. Du kannst auch beide Versionen nacheinander einfügen oder im unteren Teil des Fensters das Resultat von Hand bearbeiten. | ||
[[Datei:Fork merge 2.jpg|center|frame]] | [[Datei:Fork merge 2.jpg|center|frame]] | ||
Version vom 23. August 2020, 20:37 Uhr
In dem Projekt liegt eine Datei team.txt. Öffne diese in einem Texteditor und trage dich mit deinem Gitea Nutzernamen, vollen Namen und deiner E-Mail-Adresse in diese Datei ein. Speichere die Datei dann ab und schließe sie.
Ngb,J. Neugebauer,ngb@helmholtz-bi.de
Die Änderung auf dem Server speichern
In Fork wird dir nun angezeigt, dass es Änderungen in deinem Projekt gibt (links in der Seitenlieste steht "Local Changes (1)" oder nur "Changes (1)"). Klickst du dort, werden dir alle Dateien angezeigt, in denen Fork Änderungen festgestellt hat.
Du befindest dich in der "Stageing Area". Hier markierst du Dateien für einen "Commit" (ein Commit kann mehrere Dateien (oder Teile von Dateien) enthalten, die gemeinsam eine funktionale Änderung am Programm darstellen). Wähle hier die Datei team.txt aus und klicke oben auf "Stage". Die Datei wird nun ein Fenster nach unten zu "Staged Changes" geschoben. Rechts kannst du nun ein "Commit subject" und eine "Description" für die Änderungen in diesem Commit eingeben. Gib hier ein passendes Subject ein.
Nun kannst du deine erste Änderung committen. Fork zeigt dir dann an, dass dein lokales Repository Änderungen enthält, die bisher nicht auf den zentralen Server ("origin") überspielt wurden.
Führe nun einen "push" aus, indem du oben bei den drei Pfeilen auf den schwarzen nach oben klickst. Es wird ein Dialog angezeigt, den du einfach bestätigen kannst.
Nach einem Klick auf "Push" werden deine Änderungen auf den Server übertragen.
Wenn du keine Fehlermeldung bekommst, dann kannst du mit dem nächsten Schritt weiter machen. Ansonsten besteht ein Konflikt, weil schon jemand anderes Änderungen gepushed hat. Wie du damit umgehst erfährst du weiter unten.
Konflikte beheben
Wenn eine Datei gleichzeitig von mehreren Entwicklern bearbeitet wurde, dann kann es zu einem Konflikt kommen. Normalerweise würden die Änderungen des einen Entwicklers die des anderen überspeichern. Git erkennt diesen Konfilkt aber und erlaubt es dem zweiten Programmierer, das Problem zu beheben.
Wenn ein Konflikt in einer Datei aufgetreten ist wird in Fork ein Hinweis angezeigt.
Links wird angezeigt, dass es sowohl Änderungen auf dem zentralen Server gibt, als auch in der lokalen Kopie (Pfeile nach oben/unten). Um das Problem zu beheben klicke oben auf "Resolve".
Wähle eine Datei mit einem Konfilkt und dann "Merge in Fork".
Es wird nun ein zwei geteiltes Fenster angezeigt, in dem die beiden in konflikt stehenden Versionen der Dateien nebeneinander angezeigt werden. Du kannst jetzt für jede Zeile entscheiden, welche Version in der Datei behalten werden soll. Du kannst auch beide Versionen nacheinander einfügen oder im unteren Teil des Fensters das Resultat von Hand bearbeiten.
Klicke schließlich auf "Resolve" und dann "Commit". Der Konflikt wurde aufgelöst und die zusammengefügte Datei direkt committed.
Hast du so alle Konflikte aufgehoben kannst du erneut versuchen deine Änderungen zu "pushen".






