bug分支和feature分支

bug分支和feature分支

ID:37954782

大小:648.23 KB

页数:5页

时间:2019-06-03

bug分支和feature分支_第1页
bug分支和feature分支_第2页
bug分支和feature分支_第3页
bug分支和feature分支_第4页
bug分支和feature分支_第5页
资源描述:

《bug分支和feature分支》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、bug分支和feature分支软件开发中,bug就像家常便饭一样。有了bug就需要修复,在Git中,由于分支是如此的强大,所以,每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支删除。当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交:$gitstatus#Onbranchdev#Changestobecommitted:#(use"gitresetHEAD..

2、."tounstage)##newfile:hello.py##Changesnotstagedforcommit:#(use"gitadd..."toupdatewhatwillbecommitted)#(use"gitcheckout--..."todiscardchangesinworkingdirectory)##modified:readme.txt#并不是你不想提交,而是工作只进行到一半,还没法提交,预计完成还需1天时间。但是,必须在两个小时内修复该bug,怎么

3、办?幸好,Git还提供了一个stash功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作:$gitstashSavedworkingdirectoryandindexstateWIPondev:6224937addmergeHEADisnowat6224937addmerge现在,用gitstatus查看工作区,就是干净的(除非有没有被Git管理的文件),因此可以放心地创建分支来修复bug。首先确定要在哪个分支上修复bug,假定需要在master分支上修复,就从master创建临时分支

4、:1/5$gitcheckoutmasterSwitchedtobranch'master'Yourbranchisaheadof'origin/master'by6commits.$gitcheckout-bissue-101Switchedtoanewbranch'issue-101'现在修复bug,需要把“Gitisfreesoftware...”改为“Gitisafreesoftware...”,然后提交:$gitaddreadme.txt$gitcommit-m"fixbug101"[i

5、ssue-101cc17032]fixbug1011filechanged,1insertion(+),1deletion(-)修复完成后,切换到master分支,并完成合并,最后删除issue-101分支:$gitcheckoutmasterSwitchedtobranch'master'Yourbranchisaheadof'origin/master'by2commits.$gitmerge--no-ff-m"mergedbugfix101"issue-101Mergemadebythe'r

6、ecursive'strategy.readme.txt

7、2+-1filechanged,1insertion(+),1deletion(-)$gitbranch-dissue-101Deletedbranchissue-101(wascc17032).太棒了,原计划两个小时的bug修复只花了5分钟!现在,是时候接着回到dev分支干活了!$gitcheckoutdevSwitchedtobranch'dev'$gitstatus#Onbranchdev2/5nothingtocommit(work

8、ingdirectoryclean)工作区是干净的,刚才的工作现场存到哪去了?用gitstashlist命令看看:$gitstashliststash@{0}:WIPondev:6224937addmerge工作现场还在,Git把stash内容存在某个地方了,但是需要恢复一下,有两个办法:一是用gitstashapply恢复,但是恢复后,stash内容并不删除,你需要用gitstashdrop来删除;另一种方式是用gitstashpop,恢复的同时把stash内容也删了:$gitstashpop#

9、Onbranchdev#Changestobecommitted:#(use"gitresetHEAD..."tounstage)##newfile:hello.py##Changesnotstagedforcommit:#(use"gitadd..."toupdatewhatwillbecommitted)#(use"gitcheckout--..."todiscardchangesinworkingdirectory)##modified:r

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。