Unterschiede
Hier werden die Unterschiede zwischen der gewählten und der aktuellen Version gezeigt.
java-tools:git 2014/12/18 11:01 | java-tools:git 2020/01/22 20:59 aktuell | ||
---|---|---|---|
Zeile 21: | Zeile 21: | ||
</code> | </code> | ||
\\ | \\ | ||
- | Einen Branch ausschecken (dabei werden Änderungen, welche noch nicht commited wurden, verworfen):\\ | + | Einen Branch ausschecken (dabei werden Änderungen, welche noch nicht committed wurden, verworfen):\\ |
<code> | <code> | ||
git checkout <branch> | git checkout <branch> | ||
+ | </code> | ||
+ | \\ | ||
+ | Lokale Änderungen verwerfen, welche bereits committed wurden:\\ | ||
+ | <code> | ||
+ | git reset --hard <origin/branch> | ||
</code> | </code> | ||
\\ | \\ | ||
Zeile 33: | Zeile 38: | ||
<code> | <code> | ||
git add . | git add . | ||
+ | </code> | ||
+ | Genauere Liste der Änderungen anzeigen und Möglichkeit der Auswahl,\\ | ||
+ | welche Änderungen in die staged-area zum Commit übernommen werden sollen\\ | ||
+ | und Anzeige einer Befehlsliste für das weitere Vorgehen (auch beenden ohne zu add-en) | ||
+ | <code> | ||
+ | git add -i | ||
</code> | </code> | ||
\\ | \\ | ||
Zeile 75: | Zeile 86: | ||
<code> | <code> | ||
git branch | git branch | ||
+ | </code> | ||
+ | \\ | ||
+ | Änderungen anzeigen (staged, unstaged, untracked):\\ | ||
+ | (siehe auch => git add -i) | ||
+ | <code> | ||
+ | git status | ||
</code> | </code> | ||
\\ | \\ | ||
Zeile 93: | Zeile 110: | ||
</code> | </code> | ||
\\ | \\ | ||
+ | Aktuelle Dateiversion mit letzer Version vergleichen: | ||
+ | <code> | ||
+ | git log -p [--follow] [-1] myFile | ||
+ | </code> | ||
+ | |||
==== Git konfigurieren ==== | ==== Git konfigurieren ==== | ||
Dafür sorgen, dass sich die bereits gemergten Teile gemerkt werden:\\ | Dafür sorgen, dass sich die bereits gemergten Teile gemerkt werden:\\ | ||
Zeile 114: | Zeile 136: | ||
==== Beispielhafter Workflow mit zwei Entwicklern ==== | ==== Beispielhafter Workflow mit zwei Entwicklern ==== | ||
Nennen wir die beiden A-User und B-User.\\ | Nennen wir die beiden A-User und B-User.\\ | ||
+ | Diese arbeiten auf einem gemeinsamen Branch namens //develop//.\\ | ||
A-User macht Änderungen an einer Datei und commited diese. | A-User macht Änderungen an einer Datei und commited diese. | ||
B-User macht ebenfalls Änderungen, aber an einer anderen Datei. | B-User macht ebenfalls Änderungen, aber an einer anderen Datei. | ||
B-User commited und pushed. | B-User commited und pushed. | ||
- | A-User möchte nun commiten, der Versuch wird aber //rejected//, obwohl B-User an anderen Dateien gearbeitet hat. Daher muss A-User erst mit einem //git fetch origin// sein Repository auf den neusten Stand bringen. Anschließend führt er einen Merge mit //git merge origin/develop// durch. Nun kann A-User seine Änderungen //git push// ins remote Repository übertragen,. | + | A-User möchte nun commiten, der Versuch wird aber //rejected//, obwohl B-User an anderen Dateien gearbeitet hat. Daher muss A-User erst mit einem <code>git fetch origin</code> |
+ | sein Repository auf den neusten Stand bringen. Anschließend führt er einen Merge mit | ||
+ | <code>git merge origin/develop</code> | ||
+ | durch. Nun kann A-User seine Änderungen | ||
+ | <code>git push</code> | ||
+ | ins remote Repository übertragen,. | ||