第四個模塊 Git stash保存現(xiàn)場

當手頭工作沒有完成時,先把工作現(xiàn)場git stash一下,然后去修復bug,修復后,再git stash pop,回到工作現(xiàn)場。

當你接到一個修復一個代號101的bug的任務時,很自然地,你想創(chuàng)建一個分支issue-101來修復它,但是,等等,當前正在dev上進行的工作還沒有提交:

git status
------------------------------------
# On branch dev
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       new file:   hello.py
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#       modified:   readme.txt
#

并不是你不想提交,而是工作只進行到一半,還沒法提交,預計完成還需1天時間。但是,必須在兩個小時內(nèi)修復該bug,怎么辦?

Git還提供了一個stash功能,可以把當前工作現(xiàn)場“儲藏”起來,等以后恢復現(xiàn)場后繼續(xù)工作:

git stash

現(xiàn)在,用git status查看工作區(qū),就是干凈的,因此可以放心地創(chuàng)建分支來修復bug。

首先確定要在哪個分支上修復bug,假定需要在master分支上修復,就從master創(chuàng)建臨時分支:

git checkout master
git checkout -b issue-101

現(xiàn)在修復bug,需要把“Git is free software ...”改為“Git is a free software ...”,然后提交:

git add .
git commit -m '修復完成'

修復完成后,切換到master分支,并完成合并,最后刪除issue-101分支:

git checkout master
git merge --no-ff -m '修復完成-合并' issue-101
git branch -d issue-101

太棒了,原計劃兩個小時的bug修復只花了5分鐘!現(xiàn)在,是時候接著回到dev分支干活了!

git checkout dev
git status

工作區(qū)是干凈的,剛才的工作現(xiàn)場存到哪去了?用git stash list命令看看

git stash list

工作現(xiàn)場還在,Git把stash內(nèi)容存在某個地方了,但是需要恢復一下,有兩個辦法

一是用git stash apply恢復,但是恢復后,stash內(nèi)容并不刪除,你需要用git stash drop來刪除;
另一種方式是用git stash pop,恢復的同時把stash內(nèi)容也刪了

git stash pop

你可以多次stash,恢復的時候,先用git stash list查看,然后恢復指定的stash,用命令

git stash apply stash@{0}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,852評論 9 163
  • 本文為 Git教程的學習筆記,教程源自廖雪峰的博客。這是一個由淺入深,學完后能立刻上手的Git教程。另,附上另一本...
    七弦桐語閱讀 6,480評論 5 47
  • 聲明:這篇文章來源于廖雪峰老師的官方網(wǎng)站,我僅僅是作為學習之用 Git簡介 Git是什么? Git是目前世界上最先...
    橫渡閱讀 4,138評論 3 27
  • 分期付款多數(shù)用在一些生產(chǎn)周期較長,成本費用較高的產(chǎn)品交易中。 分期付款是在買賣雙方合同簽訂后,買方先付一部分賬款給...
    顧長夏閱讀 430評論 0 0
  • 珠簾卷,玉妃開。清幽滿院飄來。隨手輕拈欣賞,嫣紅如醉腮。 余酒未平心緒,琴聲夜伴情懷。惆悵漫天飛隘,風凜凜、雪皚皚...
    Odette伊菲閱讀 245評論 9 16

友情鏈接更多精彩內(nèi)容