Git: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
Roth (Diskussion | Beiträge) →Branch: Clarify |
Roth (Diskussion | Beiträge) →HEAD: Example |
||
| Zeile 50: | Zeile 50: | ||
=== HEAD === | === HEAD === | ||
HEAD ist ein Zeiger auf einen Commit. Git markiert den aktuellen (letzten) Commit in einem Branch als "HEAD". Der HEAD beschreibt also den aktuellen Zustand des Repository im jeweiligen Branch. Faktisch gibt es also bei mehreren Branches mehrere HEAD Commits. Praktisch zeigt HEAD aber zu jedem Zeitpunkt eindeutig auf einen Commit, da ein Checkout auf einen Branch auch immer eindeutig ist. Wird von "HEAD des dev Branch" gesprochen, meint dies den Commit auf den HEAD zeigt, wenn der dev Branch ausgecheckt wäre. | HEAD ist ein Zeiger auf einen Commit. Git markiert den aktuellen (letzten) Commit in einem Branch als "HEAD". Der HEAD beschreibt also den aktuellen Zustand des Repository im jeweiligen Branch. Faktisch gibt es also bei mehreren Branches mehrere HEAD Commits. Praktisch zeigt HEAD aber zu jedem Zeitpunkt eindeutig auf einen Commit, da ein Checkout auf einen Branch auch immer eindeutig ist. Wird von "HEAD des dev Branch" gesprochen, meint dies den Commit auf den HEAD zeigt, wenn der dev Branch ausgecheckt wäre. Um die jeweils aktuellen Zustände der Branches zu sehen, kann der <code>git log</code> Befehl mit dem <code>--decorate</code> verwendet werden: | ||
git log --decorate --oneline --graph | |||
* c311082 (HEAD, master) Merge dev "foo bar" | |||
|\ | |||
| * 1c34c42 (develop) Implemented Implement bar | |||
| * 238fb57 (develop) Implemented Implement foo | |||
|/ | |||
* 5d992aa (origin/master, origin/develop) Init | |||
In Klammern sieht man jeweils den letzten Zustand des entsprechenden Branches. Ausserdem <code>(HEAD, master)</code> lässt erkennen, dass der aktive Branch "master" ist und der Commit mit der kurz-ID "c311082" in diesem der aktuelle Commit. | |||
= Arbeiten mit Git = | = Arbeiten mit Git = | ||
