詳解 git stash

git stash 詳解

git stash 命令及其參數功能。

在 Git 中,stash 是一種暫存工作區更改的方法,它允許您暫時保存未提交的更改,並將當前工作目錄恢復到上次提交的狀態。這對於需要切換分支處理其他問題、或者當前工作尚未完成但需要清理工作區以拉取或合併其他分支時非常有用。

以下是 git stash 命令的基本用法和參數:

  1. 基本操作:

    • git stash:此命令會將當前工作目錄中的所有未提交更改(包括已添加至暫存區的)保存到一個新的 stash 項目中,並重置工作目錄爲上一次提交的狀態。
    • git stash list:顯示所有已緩存的 stash 列表及其簡短描述。
  2. 應用 stash:

    • git stash apply [stash@{n}]:從 stash 列表中取出並應用指定編號(n)的 stash,如果沒有指定,則默認使用最近的一個 stash。注意,這並不會刪除stash,它仍然存在於列表中。
    • git stash pop:與 apply 類似,但它會在應用 stash 後立即將其從 stash 列表中移除。
  3. 創建並應用 stash:

    • git stash save "message":可以自定義 stash 的描述信息,並執行 stash 操作。
    • git stash branch <branchname> [<stash@{n}>]:基於某個 stash 創建新的分支,並自動應用該 stash 中的更改。
  4. 查看 stash 內容:

    • git stash show [-p | --patch] [<stash@{n}>]:顯示指定 stash 包含的更改詳情,如果不指定 stash 編號,則默認顯示最近的 stash。加上 -p--patch 參數可以看到差異補丁格式的詳細內容。
  5. 刪除 stash:

    • git stash drop [<stash@{n}>]:刪除指定的 stash,不指定則刪除最近的 stash。
  6. 合併 stash:

    • git stash apply --indexgit stash pop --index:如果stash包含索引修改(即暫存區的更改),這個選項會使Git嘗試將這些更改精確地應用回暫存區,而不僅僅是工作目錄。
  7. 清除所有 stash(謹慎操作):

    • git stash clear:刪除所有stash。

請注意,在實際工作中合理使用 stash 功能,尤其是在處理重要變更時確保數據安全,避免因誤操作導致代碼丟失。同時,結合實際情況靈活運用上述命令和參數,有助於更好地管理和維護你的 Git 工作流程。



歡迎關注公-衆-號【TaonyDaily】、留言、評論,一起學習。

公衆號

Don’t reinvent the wheel, library code is there to help.

文章來源:劉俊濤的博客


若有幫助到您,歡迎點贊、轉發、支持,您的支持是對我堅持最好的肯定(_)

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