首页 > 解决方案 > 有没有办法在 Git 中不使用 Commit 或 Stash 来保存我当前的更改?

问题描述

我已经更改了很多文件,但我意识到我的方法并不好。所以,我想尝试另一种方法。在这种情况下,我知道两种解决方案:

  1. 提交:我不想使用此功能,因为我知道我当前的代码不起作用。
  2. Stash:我也不想使用它,因为我错过了几个文件,我必须重新编写它们。

我正在寻找的是以某种方式保存我当前的更改(不会丢失我当前的更改),然后丢弃一些我不想要的更改,同时保留其余的更改。在这种情况下,如果我意识到我的第二种方法也不起作用,那么我只需要切换到以前的状态。

有这样的功能吗?

标签: git

解决方案


我认为@Signey_Gijzen 的答案可能是最好的,但您也可以使用git stash apply. 也就是说,你会想要做:

$ git stash             # as usual, stashes the changes
... now your changes are gone from the working tree ...
$ git stash apply       # unstashes, but keeps stash around
... now they're all back ...
$ git stash list        # the stash will still be there
stash@{0}: WIP on master: ...
$ git show stash@{0}    # what did that stash look like again?

推荐阅读