2015-04-06 403 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)连接时。根据您的团队的工作流程,可能需要重新设置分支的当前状态,或在推送之前合并新的更改。如果您的公司或项目本地的显式工作流程文档不可用,请向您的团队的开发主管询问他们更喜欢哪种方法。