我在我的开发分支中有一些未提交的更改,我使用git stash将它们隐藏起来,但在这些隐藏的更改中有一些非常重要的更改。有什么办法能把这些改变拿回来吗?

此外,我在存储的代码文件上做了一些更改。

如果可能的话,我是否有机会将存储的更改检索到新的分支?


当前回答

你可以使用以下方法来隐藏未提交的更改:

git stash

然后使用以下命令签出到一个新的分支:

git checkout -b

然后应用存储的提交:

git stash apply

其他回答

简单来说,你有两个选择来重新应用你的收藏:

git stash pop -恢复到保存状态,但它会从临时存储中删除stash。 git stash apply -恢复到保存的状态,并留下存储列表,以便以后可能重用。

您可以在本文中阅读更多关于git存储的详细信息。

git stash pop

一切都会恢复正常吗

正如评论中所建议的,你可以使用git的stash分支newbranch将stash应用到一个新的分支,这与运行相同:

git checkout -b newbranch
git stash pop

你可以使用以下方法来隐藏未提交的更改:

git stash

然后使用以下命令签出到一个新的分支:

git checkout -b

然后应用存储的提交:

git stash apply

就像很多人说的那样,做git stash apply stash@{1}将获得当前分支的更改,我不知道为什么这对我不起作用。

对我来说,做git stash应用stashNumber工作的所有时间。

举个例子,如果我想找回1号藏匿点这就是我要做的,git藏匿应用1

PS:你可以用pop代替apply..唯一的区别是,apply不会删除隐藏,但做pop将删除stashnnumber你要弹出。

您可以在git bash中使用单个命令

git stash pop