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

全國咨詢/投訴熱線:400-618-4000

怎么在不影響當(dāng)前開發(fā)的情況下Debug?

更新時間:2022年08月30日18時07分 來源:傳智教育 瀏覽次數(shù):

在項目的正常開發(fā)過程中,之前發(fā)布過的版本可能很會出bug,這時就需要停下來現(xiàn)在的開發(fā)任務(wù),先去修改bug,完成后再回來繼續(xù)開發(fā)任務(wù)Git中stash提供了保存現(xiàn)場的功能,可以把當(dāng)前工作區(qū)、暫存區(qū)中的內(nèi)容不需要提交而保存下來,轉(zhuǎn)而去做bug修復(fù),完成后再恢復(fù)現(xiàn)場,繼續(xù)開發(fā)工作。

示例如下:停止當(dāng)前工作,修復(fù)master分支下的一個bug,為修改dailyfresh/settings.py文件語言和時區(qū)的原內(nèi)容為:

LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
將語言和時區(qū)改為:
LANGUAGE_CODE = 'zh-Hans'
TIME_ZONE = 'Shanghai/Asia'
接下來我們開始來創(chuàng)建不影響當(dāng)前工作的Debug分支。

1.查看當(dāng)前狀態(tài)

git status

1661852903068_51.png

2.保存現(xiàn)場

git stash

1661852939219_52.png

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

git status

1661853046306_53.png

3.切換到master分支

git checkout master

4.新建臨時分支用于修復(fù)bug,用完后會刪除此分支

git checkout -b bug001

5.按照上面的設(shè)計,修改dailyfresh/settings.py文件的語言和時區(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)容提交到倉庫區(qū)

git commit -m '修復(fù)時區(qū)語言'

6.切換回master分支

git checkout master

7.將bug001分支合并到master分支

因為臨時分支用完后會被刪除,無法通過分支查詢歷史記錄,所以使用臨時分支時需要使用no-ff的方式,同時寫上-m備注信息

git merge --no-ff -m "修復(fù)bug-語言時區(qū)" bug001

1661853312559_54.png

推送到服務(wù)器

git push

8.刪除臨時分支bug001

git branch -d bug001

1661853630661_55.png

9.切換回工作分支zhujiao

git checkout zhujiao

查看現(xiàn)場列表

git stash list

1661853706012_56.png

恢復(fù)現(xiàn)場

git stash pop

1661853760439_57.png

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

git status

1661853801806_58.png

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

0 分享到:
和我們在線交談!