Änderungen

Wechseln zu: Navigation, Suche

GameDevWeek/SourceTree

978 Bytes hinzugefügt, 17:56, 8. Mär. 2015
keine Bearbeitungszusammenfassung
== Vorbereitung ==
[[Datei:P4merge install.png|300px|miniatur|rechts|Lediglich P4Merge muss installiert werden.]]# Installiere [http://www.sourcetreeapp.com/ SourceTree]installieren# Installiere [http://www.perforce.com/downloads/20-User?qt-perforce_downloads_step_3=1#product-10 P4Merge]installieren
#* Bei der Installation muss lediglich der Haken bei P4Merge gesetzt werden.. alle anderen Tools sind nicht notwendig.
# Erstelle einen Ein [https://github.com/ GitHub Account]muss erstellt werden, falls nicht vorhanden.<br style="clear: both"/>
=== Bookmarks Verstecken ===
Die Bookmarks Ansicht in SourceTree ist selten notwendig. Ihr könnt diese Diese kann über das View Menü versteckenversteckt werden.
=== Username & Email konfigurieren ===
# Starte In SourceTree.# Öffne die Optionen öffnen (Tools->Options)# Wechsle in den Den Tab "General"wählen
# Full Name erscheint als solches in Github.
# Email muss der Github Email entsprechen.
=== Merge Tool konfigurieren ===
# Starte In SourceTree.# Öffne die Optionen öffnen (Tools->Options)# Wechsle in den Den Tab "Diff"wählen# Bei "P4Merge" muss als Option bei "External Diff Tool" und bei "Merge Tool" wähle "P4Merge"gewählt sein.
== Clone Klonen des Repositories ==[[Datei:sourcetree_clone.png|300px|miniatur|rechts|Klonen eines Repositories.]]# Klick auf In der Toolbar den Button "Clone / New"benutzen.# Im Tab "Clone Repository" wählefolgende Konfiguration setzen:
#* URL: https://github.com/Lusito/GameDevWeek.git
#* Destination Path: Ein Ort wo ihr den der Code speichern wolltgespeichert werden soll.#* Bookmark könnt ihr wählenWenn Bookmarks nicht von Interesse sind, müsst ihr aber nichtkann der Haken abgeschaltet werden.
# Es wird nun alles heruntergeladen. Dies kann etwas dauern.
<br style="clear: both"/>
== Normaler Git Workflow ==
=== Einen entfernten Branch auschecken ===
[[Datei:sourcetree_checkout.png|300px|miniatur|rechts|Klonen eines Repositories.]]* In der Baumstruktur Links gibt es einen Bereich "Remotes" mit dem Kind Knoten "Origin"
* Hier sind alle Branches gelistet, die im Github Repository zu finden sind.
* Im Kontextmenü der Branches kann gewählt werden "Checkout ..."
* Nun habt ihr den Branch lokal verfügbar und könnt jederzeit zu diesem Wechseln.
* Der Branch wird nach Checkout automatisch ausgewählt.
 
Führt diese Schritte für den Branch "develop" aus.
<br style="clear: both"/>
=== Änderungen Stagen ===
[[Datei:sourcetree_branch_view.png|300px|miniatur|rechts|Branch Ansicht, Staged und Unstaged Files.]]
* Wenn Änderungen vorhanden sind, erscheinen diese in der Branch Ansicht als oberster Eintrag "Uncommitted changes".
** Zur Branch Ansicht wechselt man indem man in der Baumstruktur Links den aktiven Branch wählt.
* Wählt man eine einzelne Datei, kann auf der rechten Seite gesehen werden, welche Änderungen dies beinhaltet.
* Hier können auch einzelne Codeschnipsel zur Staging Area hinzugefügt werden.
<br style="clear: both"/>
=== Änderungen Stashen ===
[[Datei:sourcetree_stash_context.png|300px|miniatur|rechts|Stash Einträge.]]
Solltet ihr Änderungen durchgeführt haben, die ihr nicht committen wollt, so könnt ihr diese auslagern und später wieder zurückführen. Dies nennt sich bei Git Stashen.
# Warnung: Beim Stashen werden alle Änderungen (Staged und Unstaged) zu einem Stash hinzugefügt. Beim wiederherstellen, erscheinen diese Änderungen alle als Unstaged.
# Nun erscheint Links in der Baumstruktur ein neuer Eintrag im Knoten "Stashes".
#* Mit dessen Kontextmenü können die Änderungen zurück gespielt werden.
<br style="clear: both"/>
=== Änderungen Committen ===
[[Datei:sourcetree_commit.png|300px|miniatur|rechts|Committen.]]
# Wechsel in die Commit Ansicht mit dem Button "Commit" in der Toolbar.
# Links sind wie bekannt Staged und Unstaged Änderungen zu sehen.
# Mit einem Klick auf "Commit" beim Kommentarfeld wird der Commit gespeichert.
#* Diese Änderungen sind vorerst noch Lokal!
<br style="clear: both"/>
=== Externe Änderungen ziehen: Pull (Fetch & Merge) ===
[[Datei:sourcetree_pull.png|300px|miniatur|rechts|Pullen.]]
Bevor die Änderungen auf den Server geschoben werden können, müssen erst Updates vom Server gezogen werden und ggf. mit dem eigenen Code gemerged werden.
# Wähle den Den Button "Pull" in der Toolbarbenutzen
# Hier können die Standardeinstellungen übernommen werden.
# Git versucht alle Änderungen automatisch zu mergen. Sollte dies nicht funktionieren erscheint eine Fehlermeldung.
# Bei einem Konflikt muss manuell gemerged werden.
<br style="clear: both"/>
=== Konflikte beheben / Dateien Mergen ===
# Um diesen zu beheben wechselnt man in die Branch Ansicht und dort in den ersten Eintrag "Uncommitted changes".
# Hier erscheinen im Bereich "Unstaged files" alle Dateien die Konflikte haben.
# Für Jede Datei gehe wird wie folgt vorvorgegangen:## Öffne das Das Kontextmenü der Dateiöffnen.## Wähle "Resolve Conflicts->Launch External Merge Tool"wählen.
## P4Merge wird nun gestartet. Man sieht 3 Dateien nebeneinander und eine darunter.
##* In der Mitte ist die Basis Datei zu sehen
## Danach bleibt eine Datei übrig: dateiname.orig. Diese kann gelöscht werden falls nicht weiter benötigt.
# Sind alle Konflikte behoben, kann in die "Commit" Ansicht gewechselt werden, um die behobenen Konflikte zu committen.
 
=== Änderungen zum Server pushen ===
# Vor dem pushen immer sicherstellenist sicher zu stellen, dass man auf dem aktuellsten Stand ist (siehe Pull).
# Pushen kann man auf zwei Varianten:
#* Über den "Push" Button der Toolbar. Dieser wählt allerdings alle Branches aus. Dies ist nicht zu empfehlen. Wählt hier Hier sollte nur den der Branch ausausgewählt sein, den ihr wirklich pushen wolltder auch gepushed werden soll.
#* Über das Kontextmenü des Branches ("Push to origin/..."). Dies wählt nur den jeweiligen Branch aus.
== GitFlow ==
In SourceTree gibt es eine Möglichkeit das erstellen von Feature Branches etwas komfortabler zu gestalten. Dabei wird der [https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow GitFlow Workflow] genutzt. Lest euch Es empfiehlt sich die Beschreibung nach Möglichkeit kurz durchzu lesen.
Wie dies In SourceTree zu benutzen ist, ist in diesem Video schnell erklärt:
{{#ev:youtube|1lSdqrs2f5c|650x500}}
385
Bearbeitungen

Navigationsmenü