【Git】stash 用法總結
本文主要參考
stash是我在工作中會經常用到的命令,因為我們在工作中經常會遇到臨時情況,需要保留當前工作區的修改,轉而去做其他程式碼的修改;另外我在更新分支程式碼的時候也習慣於先將當前工作區的程式碼先用stash儲存起來,然後再更新分支程式碼,最後apply stash進行程式碼的衝突處理,這樣做會更加的安全。stash的使用比較簡單,但stash仍然有一些不常用的用法,這裡我做簡單總結一下。
1. 基礎——道理大家都懂,就怕只有我不知道
stash命令主要用於處理工作目錄雜亂的狀態,即將所有工作區修改、跟蹤的檔案以及暫存區保持的檔案打包,然後將未完成的修改儲存到一個棧上。相當於將當前分支恢復到最近一次提交的狀態。
來看看stash的基礎用法:
- <b>git stash list </b> 檢視stash列表
- <b>git stash ( pop | apply ) [<stash>] </b> 從stash棧中的某一個stash應用到當前工作區中(注:pop在應用完後會刪除這個stash,apply則仍然保留)例:git stash apply stash@{0}
- <b>git stash drop [<stash>]</b> 刪除指定索引的stash 例:git stash drop stash@{0}
- <b>git stash clear</b> 清空所有儲存的stash列表
- <b>git stash save [<message>]]</b> 將當前工作區、暫存區的改動儲存到stash棧中
- <b>git stash show [<stash>] 檢視某一個stash的檔案</b>
2.擴充套件——不常用的也要多多瞭解啊,以備不時之需
<b>git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet] [-u|--include-untracked] [-a|--all] [<message>]</b>
① [-p|--patch] 會顯示工作區和HEAD的差異,通過編輯差異檔案,排除不需要儲存的內容。和git add -p命令類似。在輸入git stash save -p 後,系統會提示: <b>Stash this hunk [y,n,q,a,d,/,e,?]? </b> 其中y,n,q,a,d,/,e分別表示:
<pre>
y - stage this hunk
n - do not stage this hunk
q - quit; do not stage this hunk nor any of the remaining ones
a - stage this hunk and all later hunks in the file
d - do not stage this hunk nor any of the later hunks in the file
g - select a hunk to go to
/ - search for a hunk matching the given regex
j - leave this hunk undecided, see next undecided hunk
J - leave this hunk undecided, see next hunk
k - leave this hunk undecided, see previous undecided hunk
K - leave this hunk undecided, see previous hunk
s - split the current hunk into smaller hunks
e - manually edit the current hunk
? - print help
</pre>
②[-k|--[no-]keep-index] 是否重置暫存區,預設stash save 在儲存之後會重置暫存區,如果不希望重置暫存區,可以使用git stash save -k
③[-q|--quiet]終端不列印輸出
④[-u|--include-untracked]把沒有新增到git的檔案也會儲存起來(例如剛剛新建的檔案)
⑤ [-a|--all] 會把忽略的檔案也儲存下來
注:文中如有任何錯誤,請各位批評指正!
相關文章
- Git Stash用法Git
- git stash用法詳解Git
- git-stash簡單用法Git
- Git -- StashGit
- git stashGit
- git reset rebase 用法總結Git
- git stash save與git stash push區別Git
- git stash回退Git
- git stash 怎麼用?Git
- git stash使用一則Git
- git分支管理和stashGit
- git stash 引發得事故Git
- Two useful scenarios of git stashiOSGit
- git stash 命令簡單使用Git
- git在工作中的用法總結-使用篇Git
- 【Git】rebase 用法小結Git
- git 解決衝突 —— git stash 當前修改Git
- Git-命令列-使用 git stash 暫存程式碼Git命令列
- git總結Git
- Git 隱藏程式碼篇stash(三)Git
- pandas用法總結
- layui用法總結UI
- less用法總結
- Promise用法總結Promise
- sed用法總結
- Autotrace 用法總結
- Git基於指定stash儲藏建立分支Git
- git在工作中的用法總結-環境安裝篇Git
- Git 使用總結Git
- git命令總結Git
- 轉:Git 總結Git
- git分支總結Git
- Git使用總結Git
- git常用命令stash詳細解釋。Git
- Quartz:基本用法總結quartz
- axios用法總結iOS
- Const 用法總結
- xPath 用法總結整理