在Git中,每个Bug都可以通过一个新的临时分支修复,修复后,合并分支,然后删除。
① 当接到一个Bug任务时,但dev上进行的工作还没有提交时:
② git stash 把现场工作“储藏”起来,等以后恢复现场后继续工作
用git status查看工作区时,是干净的(除非有没有被Git管理的文件)
③ 确定在哪个分支上修复Bug,假定master ,则
④ git checkout -b issue-101
⑤ 修复后,add, commit
⑥ 切回 master,合并,删除
⑦ 返回dev
git stash list 查看储存的工作区
⑧ 恢复
你可以多次stash, 恢复时,先用git stash list查看,然后恢复指定的stash。
git stash save “……” 储藏时,添加注释信息
git stash pop [--index] [stash_id] 除了恢复进度后,还会删除当前进度
a, git stash pop 恢复最新进度到工作区(git默认会把工作区和暂存区的改动都恢复到工作区)
b, git stash --index 恢复最新进度到工作区和暂存区
c, git stash pop stash@{0} 恢复指定进度到工作区
d, git stash pop --index stash@{0}
git stash apply [--index] [stash_id] 恢复进度后,不会删除当前进度,其他跟pop一样
git stash drop [stash_id]
删除一个储存的进度,若不指定stash_id,则默认删除最新的存储进度
git stash clear
删除所有存储的进度
[stash_id] 由 git stash list 获得
当开发一个新功能时,可创建一个feature分支,在此上面开发,开发完毕后,再合并到dev, 再合并到master。