当前位置: 首页 > 工具软件 > git-task-list > 使用案例 >

Git-入门教程(七)-新建分支完成Bug修复

邰德业
2023-12-01

0.摘要

本文主要介绍在开发过程中,如何应用分支管理策略处理Bug的紧急修复问题。

 

1.问题与解决方案

在开发软件的过程中,可能会不定期地发现一些Bug,而这些Bug往往需要及时地修复,即便我们正在进行着其他的工作。

这里有几个问题需要解决:

如何保存现有的工作
在哪个分支下修复Bug
如何恢复现有工作
首先,目前的工作并未完成,不适合直接commit,那么Git提供了git stash命令保存现有的工作,并可以多次使用该命令保存。保存之后,可以通过git shash list查看

git stash         #保存现有工作
git stash list    #查看已保存的工作

在保存好现有的工作的情况下,我们就可以放心地去修复bug了。当前的分支并不适合用来修复Bug,所以我们回到master分支,创建一个新的临时分支用来修复Bug。

git checkout master
git checkout -b issue1         #创建临时分支

在Bug修复之后,我们回到之前工作的分支,恢复并删除保存的工作现场。

git stash apply   #恢复之前保存的工作现场
git stash drop    #删除已经保存的工作现场

上面的两条命令也可合为一条:

git stash pop     #恢复工作现场并删除


2.实例

假设dev分支下正在编写一个名为new_task的模块,在之前的程序中一个名为hello.py的程序出现了Bug需要修复。

git add new_task          #添加new_task
git status                #查看当前状态,Git会提醒您有文件未commit
git stash                 #保存工作现场
git status                #再次查看当前状态,此时Git显示: working tree clean
git checkout master       #回到主分支
git checkout -b issue1    #新建分支用于修复Bug
……                        #完成Bug修复工作
git checkout master       #回到主分支
git merge --no-ff -m "fix Bug in hello.py"    #将Bug修复内容merge到主分支
git checkout dev          #切换回工作分支
git stash list            #查看以保存的工作现场列表
git stash apply           #还原工作现场
git stash drop            #删除工作现场
……                        #继续完成开发工作

 

 类似资料: