用中文說說 git stash

當你使用 git 正在開發一個功能的時候,如果你突然需要到另一個分支去開發卻不想放棄當前的改動的時候,你可以使用 git stash

命令

git stash list

列出所有儲藏

git stash show [<stash>:Number]

顯示某一個(默認最近一個)儲藏詳情

git stash drop [-q|--quiet][<stash>]

刪除某一個(默認最近一個)儲藏

git stash ( pop | apply ) [--index][-q|--quiet] [<stash>]

恢復儲藏並刪除 (pop) / 不刪除 (apply) 恢復的儲藏

git stash branch <branchname> [<stash>]

從儲藏創建分支

git stash [push [-p|--patch]-k|--[no-]keep-index] [-q|--quiet] [-u|--include-untracked] [-a|--all] [-m|--message <message>] [--] [<pathspec>…​]]

儲藏,但默認不會儲藏未跟蹤的文件和被忽略的文件

git stash clear

刪除所有儲藏

git stash create [<message>]

創建一個懸空提交 (dangling commit),不會將 ref 存儲在任何地方,使用 git stash store 保存它

git stash store [-m|--message <message>][-q|--quiet] <commit>

存儲上一個命令中創建的懸空提交

參數

  • -q|--quiet 靜默模式
  • -p|--patch 以 patch 方式 push stash
  • -k|--[no-]keep-index 保留 index 序號
  • -u|--include-untracked untracked 狀態的文件也會被 push
  • -a|--all untracked 和 ignored 的文件也會被 push
  • -m|--message <message> 輸出 stash 信息
  • -- [<pathspec>] 針對特定的路徑 push

參考資料:

  1. Git - git-stash Documentation
  2. Git - 儲藏(Stashing)
  3. “git stash create x” - Where is it? - StackOverflow

本文首發地址

blog.shoyuf.top

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章