在軟件開辟過程中,我們常常會碰到須要切換分支處理緊急任務,但又不想喪恰以後分支的未提交變動的情況。這時,Git的stash
命令就派上用處了。stash
可能用降常設保存以後任務目錄跟暫存區的修改,從而讓你可能輕鬆切換分支,避免代碼衝突與喪掉。
Git stash的基本不雅點
任務目錄
任務目錄是指以後開辟者正在任務的目錄,其中包含了全部已修改但尚未提交的文件。
暫存區
暫存區,也稱作索引(Index),是提交前的一個常設地區,用於存放將要被提交的變動。
Stash
Stash是一個用於常設存儲任務目錄跟暫存區變動的棧(Stack)。經由過程利用stash
,你可能將以後的任務狀況保存起來,以便在須要時恢復。
Git stash的常用命令
保存以後任務
git stash save "save message"
這條命令會保存以後任務目錄跟暫存區的全部修改,並將它們保存到一個新的stash中。你可能為stash增加一個備註信息,以便於以後查找。
檢查全部已存儲的stash
git stash list
這條命令會列出全部已存儲的stash列表,每個stash都有一個唯一的標識符(如stash@0
)。
表現做了哪些修改
git stash show
這條命令會表現近來保存的stash所包含的修改。
利用指定的stash
git stash apply stash@num
這條命令會利用指定的stash到以後任務目錄,其中num
是stash的索引。
恢復近來的stash並刪除它
git stash pop
這條命令會恢復近來的stash到以後任務目錄,並從stash列表中刪除它。
刪除特定的stash
git stash drop stash@num
這條命令會刪除指定的stash。
清空stash客棧
git stash clear
這條命令會刪除全部保存的stash。
利用處景舉例
切換分支時保存修改
git stash # 保存以後任務
git checkout other-branch # 切換到其他分支
# 在其他分支上任務...
git checkout dev1 # 切換回本來的分支
git stash pop # 恢復之前的任務
處理緊急bug後恢復任務
git stash # 保存以後任務
# 處理bug...
git stash pop # 恢復之前的任務
總結
經由過程控制Git的stash
命令,你可能輕鬆管理常設存儲任務,避免代碼衝突與喪掉。利用stash
可能幫助你更好地構造你的任務流程,進步開辟效力。