教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

開發(fā)過(guò)程中怎樣修復(fù)過(guò)往已發(fā)布版本的bug?

更新時(shí)間:2021年11月09日14時(shí)09分 來(lái)源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

在項(xiàng)目的正常開發(fā)過(guò)程中,之前發(fā)布過(guò)的版本可能很會(huì)出bug,這時(shí)就需要停下來(lái)現(xiàn)在的開發(fā)任務(wù),先去修改bug,完成后再回來(lái)繼續(xù)開發(fā)任務(wù)。

git中stash提供了保存現(xiàn)場(chǎng)的功能,可以把當(dāng)前工作區(qū)、暫存區(qū)中的內(nèi)容不需要提交而保存下來(lái),轉(zhuǎn)而去做bug修復(fù),完成后再恢復(fù)現(xiàn)場(chǎng),繼續(xù)開發(fā)工作。

示例如下:停止當(dāng)前工作,修復(fù)master分支下的一個(gè)bug,為修改dailyfresh/settings.py文件

語(yǔ)言和時(shí)區(qū)的原內(nèi)容為

LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
將語(yǔ)言和時(shí)區(qū)改為
LANGUAGE_CODE = 'zh-Hans'
TIME_ZONE = 'Shanghai/Asia'
1.查看當(dāng)前狀態(tài)
git status


2.保存現(xiàn)場(chǎng)
git stash

再查看當(dāng)前狀態(tài),發(fā)現(xiàn)是干凈的
git status


3.切換到master分支
git checkout master
4.新建臨時(shí)分支用于修復(fù)bug,用完后會(huì)刪除此分支
git checkout -b bug001
5.按照上面的設(shè)計(jì),修改dailyfresh/settings.py文件的語(yǔ)言和時(shí)區(qū)如下
LANGUAGE_CODE = 'zh-Hans'
TIME_ZONE = 'Shanghai/Asia'
添加:將工作區(qū)中的更改添加到暫存區(qū)
注意:當(dāng)前目錄為manage.py文件所在目錄
(py_django) python@ubuntu:~/Desktop/pytest/django1/dailyfresh$ git add dailyfresh/settings.py
提交:將暫存區(qū)的內(nèi)容提交到倉(cāng)庫(kù)區(qū)
git commit -m '修復(fù)時(shí)區(qū)語(yǔ)言'
6.切換回master分支
git checkout master
7.將bug001分支合并到master分支
因?yàn)榕R時(shí)分支用完后會(huì)被刪除,無(wú)法通過(guò)分支查詢歷史記錄,所以使用臨時(shí)分支時(shí)需要使用no-ff的方式,同時(shí)寫上-m備注信息。
git merge --no-ff -m "修復(fù)bug-語(yǔ)言時(shí)區(qū)" bug001

推送到服務(wù)器
git push
8.刪除臨時(shí)分支bug001
git branch -d bug001

9.切換回工作分支zhujiao
git checkout zhujiao
查看現(xiàn)場(chǎng)列表
git stash list


恢復(fù)現(xiàn)場(chǎng)
git stash pop


恢復(fù)現(xiàn)場(chǎng)后查看工作狀態(tài)
git status

接下來(lái)可以在這個(gè)分支繼續(xù)開發(fā)。







猜你喜歡:

什么是Debug?Debug模式操作流程

Debug模式操作:減肥計(jì)劃案例

嚴(yán)重程度高的BUG一定優(yōu)先級(jí)高嗎?

什么是oracle視圖?創(chuàng)建或修改oracle視圖語(yǔ)法

傳智教育java后端開發(fā)培訓(xùn)

0 分享到:
和我們?cè)诰€交談!