git stash

发布时间 2023-12-15 11:16:00作者: aaron_agu

当我们开发一个新功能时会先从master拉出一个分支dev,然后在这个dev分支下吭哧吭哧的开始写代码开发新功能。就在此时,线上版本master出现了bug,我们应该放下手头上新功能的开发工作先将master上的bug修复,这个时候dev分支下的改动怎么处理?

  1. 其将当前未提交的修改(即,工作区的修改和暂存区的修改)先暂时储藏起来,这样工作区干净了

git stash

  1. 这个时候我们就可以放心的切换到master分支下去修复我们线上版本的bug了

git checkout -b fix_master_bug origin/master

git commit -m "xxxx"

git push

  1. 查看储藏记录列表

git stash list

  1. 先切换到dev分支下

git checkout dev

  1. 取出之前最近一次储藏的修改

git stash pop

如果有多个版本要存储多次,怎么办?

  1. 存储时加上备注

git stash save "dev_xxx_function"

  1. 查看储藏记录列表

    git stash list

  2. 先切换到想要继续的分支下

    git checkout dev

  3. 取出指定储藏的修改

    git stash apply stash@{1}

  4. 删除这个修改

    git stash drop stash@{1}