Вот способ справиться с этим, который после настройки требует только одного шага для настройки и одного шага перед каждым нажатием.
Настройка:
git branch tempChanges [branch for temporary changes]
[create your temporary changes]
git add -A
git commit
Обратите внимание на ша для этого коммита.Затем переключитесь на свою рабочую ветку и:
git cherry-pick shaOfTempChangesCommit
Теперь у вас есть изменения в вашей рабочей ветке.Делай свою работу и делай коммиты.Затем, прежде чем нажать:
git rebase -i
Вы увидите что-то вроде этого:
pick bfd4d2e This first commit is your temporary changes.
pick 186a99d Some stuff done on the working branch.
pick ec871c6 More stuff done on the working branch.
(etc.)
Удалите строку с вашими временными изменениями. Затем сохраните и выйдите,Ваша история будет переписана, чтобы исключить временные изменения.(Изменения все еще будут существовать в ветке tempChanges .) После того, как это будет сделано, проведите любое необходимое тестирование, а затем git push
.
Когда вы снова будете готовы к работе, выможет перенести временные изменения обратно в вашу текущую рабочую ветку (или новую рабочую ветку):
git cherry-pick shaOfTempChangesCommit
Итак, в сумме , все, что вы должны запомнить в этом методе, это
после создания рабочей ветви
git cherry-pick shaOfTempChangesCommit
после того, как вы закончили работать и готовы нажать
git rebase -i
[чтобы удалить временные изменения перед нажатием]