Во время работы над чем сложным, вы нашли какой то баг который в принципе очевидный и простой но не относится к той работе которой вы занимаетесь в данный момент, и вы хотите исправить его перед тем как продолжить работу. Вы можете использовать git stash чтобы заморозить текущее состояние вашей работы, и позже, после того как исправите баг, (или опционально после исправления этого бага в другой ветке и потом возвращения назад), разморозить изменения.
$ git stash save "work in progress for foo feature"
Эта команда заморозит ваши изменения в stash
, и сбросит вашу рабочее дерево и индекс на совпадающее с кончиком вашей текущей ветки. Затем вы можете приступить к исправлению.
... edit and test ...
$ git commit -a -m "blorpl: typofix"
После чего, вы можете вернуться над чем вы работали выполнив git stash apply
:
$ git stash apply
Вы также можете испльзовать заморозку чтобы создвать очереди замороженных изменений.
Если вы выполните 'git stash list' вы можете увидеть спискок из замороженных состояний сохраненных вами:
$>git stash list
stash@{0}: WIP on book: 51bea1d... fixed images
stash@{1}: WIP on master: 9705ae6... changed the browse code to the official repo
Затем вы можете приложить их индивидуально с помощью 'git stash apply stash@{1}'. Вы можете очистить список выполнив 'git stash clear'.
Примечание: stash - переводится как тайник но наверное лучше сказать что заморозить