Це простий підхід, якщо у вас мало змін коду:
1. git stash
2. git stash apply
3. remove the files/code you don't want to commit
4. commit the remaining files/code you do want
Тоді, якщо ви хочете, щоб код, який ви видалили (біти, які ви не зробили), в окремому комітеті чи іншій гілці, тоді, перебуваючи в цій гілці, виконайте:
5. git stash apply
6. git stash
З кроком 5, як ви вже застосували приховану скриньку та здійснили код, який ви хотіли на кроці 4, розрізнення та відслідковування в нещодавно застосованому скриньку - це лише код, який ви видалили на кроці 3 перед тим, як виконати етап 4.
Оскільки такий крок 6 - це прихований код, який ви не [хотіли] зробити, оскільки ви, мабуть, не хочете втрачати ці зміни, правда? Таким чином, новий скрипт з кроку 6 тепер може бути скоєний у цій чи будь-якій іншій гілці, виконавши застосунок git stash на правильній гілці та здійснивши.
Очевидно, це передбачає, що ви робите кроки в одному потоці, якщо ви зберігаєте в будь-якому іншому пункті цих кроків, вам потрібно буде відзначити скриньку для кожного кроку вище (а не лише основну скриньку та застосувати останню сховку).