經常有這樣的事情發生,當你正在進行專案中某一部分的工作,裡面的東西處於一個比較雜亂的狀態,而你想轉到其他分支上進行一些工作。問題是,你不想只為了待會要回到這個工作點,就把做到一半的工作進行提交。解決這個問題的辦法就是 git stash 命令。git 在有 change 而未 commit 時,是無法切換到其他 branch,下圖為切換 branch 錯誤訊息,因此必須透過 stash 先把 change 暫存
VS 2015 update 2 的 Team Explorer 介面上並無法執行 stash 操作,因此必須直接下 git 語,首先要安裝 git for Windows 才能透過命令提示字元來操作 git 語法
FAQ 上兩段關於 stash 說明
有安裝 git for Windows 情況下,在 Team Explorer 分支內可以直接打開命令提示字元
以下為利用 git 語法來操作 stash
Step1
- 橘框:git branch 檢查目前所在 branch
- 黃框:git status 檢查目前該分支狀態
- 紅框:有 change 未 commit 情況下,git checkout 切換到 master 上的錯誤訊息
Step2
- 灰框:git stash 暫存 change
- 紅框:git stash list 顯示剛剛的暫存
- 橘框:git status 檢查分支狀態
- 黃框:git checkout 切換到 master 上去
Step3:完成其他事情後,要繼續
- 灰框:git checkout 切回 branch
- 紅框:git stash 顯示已存在 stash 暫存
- 橘框:git stash pop 把暫存回復,可看見 change 出現啦
stash 常用命令整理
git | 說明 |
---|---|
git stash | 暫時儲存當下目錄 |
git stash list | 瀏覽 git stash 列表 |
git stash pop | 還原暫存 |
git stash drop | 清除最新暫存 |
git stash clear | 清除全部暫存 |
沒有留言:
張貼留言