簡體   English   中英

git藏匿混亂

[英]Git stashing confusion

問題是隱藏的更改不會保留在我隱藏的分支中。 其他分支存儲將被覆蓋示例:

我做:

    git checkout iss4
// made some changes
    git stash

它說:

Saved working directory and index state WIP on iss4: 9dd2345 /.../

然后我做:

git checkout master

當我現在執行git stash show ,它仍然突然可以看到我的隱藏更改。 這樣就可以覆蓋其他分支上的所有其他存儲。 是的,當我意識到這一點時,我已經失去了大約一個星期的工作:/( 編輯:出來,我沒有失去它,一切都在我的藏匿處列表中=))

我的問題是如何做到這一點,以便我可以一次在多個分支機構工作。

散劑不是特定於分支的; 當他們記住應用(作為其父對象)哪個HEAD時,它們“全局”存在於存儲庫中。

但是,更重要的是,存儲不限於單個存儲。 如果您只是執行git stash ,則可能是您積累了大量的git stash 您可以使用git stash list查看所有git stash list 如果要對當前工作目錄應用特定的存儲,則只需執行git stash apply stash@{N}

存放區是用於臨時存儲信息的單個位置,它沒有存儲分支特定信息的真實概念。

您提到您失去了一個星期的工作。 我建議使用存儲作為例外。 在大多數情況下,您應該依賴於頻繁提交到本地分支。 這樣,您將擁有提交消息和歷史記錄,還可以將所需的代碼合並和挑選代碼到其他分支中。

這是使用分布式版本控制系統的強大功能之一。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM