2015-04-06 405 views
4

我讀過關於如何使用git存儲在特定的分支上工作時需要在另一個工作,但我的問題是這些保存的更改只保留保存爲特定的會話,或者他們會保存,直到他們被銷燬即使重新啓動計算機後),並在稍後恢復?即使計算機關機,GIT STASH是否仍然存在?

問題的根源在於: 我有一臺計算機和我一起工作,而我正在開發,並且無法訪問互聯網。因此,我無法將更改推送到遠程。我需要暫時保存它們,關閉我的電腦,並在我回家時推送它們。這可能嗎?

+0

相關:http://stackoverflow.com/questions/26190837/how-many-how-long-are-stashes-saved-by-git – Jubobs

回答

4

是的,存儲被持久化到磁盤,並因此保持重新啓動。

git不保留任何命令調用之間的內容(或處於備用脆弱狀態,如未鏈接的文件);這樣做會需要一個進程外守護進程或其他目前沒有包含的組件 - 因此,這會導致相當大的額外複雜性而無法獲得顯着的收益。


也就是說,鑑於你所描述的工作流程,我不明白你爲什麼會需要使用藏匿的一天到一天的工作時斷開。只需在本地提交您的更改,然後push不帶使用--force)連接時。根據您的團隊的工作流程,可能需要重新設置分支的當前狀態,或在推送之前合併新的更改。如果您的公司或項目本地的顯式工作流程文檔不可用,請向您的團隊的開發主管詢問他們更喜歡哪種方法。