При смене некоторых изменений Git создает две отдельные фиксации: "WIP on branch" и "index on branch":
$ git log --graph --all
* commit 98aac13303ca086580c1ec9ccba5fe26c2a8ef3c
|\ Merge: 7d99786 82c5c76
| | Author: Tieme <[email protected]>
| | Date: Wed Nov 19 09:58:35 2014 +0100
| |
| | WIP on development: 7d99786 Last real commit
| |
| * commit 82c5c763357c401135675a39bfabf9b7f6805815
|/ Author: Tieme <[email protected]>
| Date: Wed Nov 19 09:58:35 2014 +0100
|
| index on development: 7d99786 Last real commit
|
|
| * commit 7d9978637a0e1ef92f2432189bdebf2317f0b2f0
| Author: Tieme <[email protected]>
| Date: Tue Nov 18 17:32:33 2014 +0100
|
| Last real commit
|
Я просмотрел документацию для этого, но это не делает его более ясным:
Закладок представляется как фиксация, чье дерево записывает состояние рабочего каталога, а его первый родитель - это фиксация в HEAD, когда был создан stash. Дерево второго родителя записывает состояние индекса при создании кошелька, и оно становится дочерним элементом фиксации HEAD. Граф предков выглядит следующим образом:
.----W / / -----H----I
где H - фиксация HEAD, я - фиксация, которая записывает состояние индекса, а W - это фиксация, которая записывает состояние рабочего дерева.
Почему существуют 2 коммиты, а не только один для файлов, которые я изменил?