git stash是git的一個命令,用于臨時保存當前的工作進度,以便可以切換到其他分支上工作。它可以將未提交的修改保存為一個堆棧中的狀態,隨時可以重新應用。
使用git stash命令可以執行以下操作:
保存當前工作進度:執行git stash
命令,將未提交的修改保存到一個新的堆棧中,并恢復到一個干凈的工作目錄。這樣可以切換到其他分支上繼續工作。
查看保存的工作進度:執行git stash list
命令,可以列出所有保存的工作進度。
恢復保存的工作進度:有兩種方式可以恢復保存的工作進度:
git stash apply
命令,可以恢復最新保存的工作進度到當前分支。git stash apply stash@{n}
命令,可以恢復指定的保存的工作進度到當前分支。刪除保存的工作進度:執行git stash drop
命令,可以刪除最新保存的工作進度。
git stash drop stash@{n}
命令,可以刪除指定的保存的工作進度。恢復并刪除保存的工作進度:執行git stash pop
命令,可以恢復最新保存的工作進度到當前分支,并從堆棧中刪除該工作進度。
git stash pop stash@{n}
命令,可以恢復指定的保存的工作進度到當前分支,并從堆棧中刪除該工作進度。創建一個新分支并恢復保存的工作進度:執行git stash branch <branchname>
命令,可以創建一個新的分支,并恢復最新保存的工作進度到該分支上。
需要注意的是,git stash只能保存還未被添加到暫存區的修改,如果已經使用了git add命令將修改添加到了暫存區,那么stash將無法保存這部分修改。