暂存工作区现场 git stash

场景:工作到一半突然插入其他的事情,此时又不想提交手头的工作变更,可以选用 git stash

1. 暂存当前工作区的修改

  • git stash
    $ git stash
    Saved working directory and index state WIP on dev: 6224937 add merge
    HEAD is now at 6224937 add merge
    

2. 切换到别的分支完成插入的事情

3. 切换回之前工作的的分支

查看暂存的列表

  • git stash list
$ git stash list
stash@{0}: WIP on dev: 6224937 add merge

恢复暂存的内容

两种姿势:

  1. git stash apply 恢复; 但是恢复后,stash 内容并不删除; 你需要用 git stash drop 来删除;

  2. git stash pop 恢复的同时把 stash 内容也删了:

多次 stash 时恢复

可以多次 git stash,stash 可以看做是一个「栈」 先用 git stash list 查看,然后恢复指定的stash,例如上面的 stash@{0}

git stash apply stash@{0}

删除暂存操作

git stash drop
  • 删除最新的一个暂存 git stash drop
  • 刪除特定的暂存 git stash drop stash_ID

删除所有的暂存

git stash clear

results matching ""

    No results matching ""