为什么要在藏匿之前使用`git reset HEAD`来取消登台?

时间:2019-01-22 22:29:11

标签: git

https://stackoverflow.com/a/48156644/156458

  

因此,您git add编辑了您的更改,因此这些更改已被暂存。   首先,您要使用git reset HEAD . 取消登台   是目录中的顶层。文件应全部为(大多数   可能现在)变成红色,表明存在未进行的更改。

     

现在,您可以在创建新分支时git stash进行这些更改。   git checkout <<master branch name>>,然后git checkout -b <<new topic branch name>>

     

您现在拥有一个完整的母版副本,所以让我们将它们藏起来   随git stash pop而变化。现在您回到了起点   与所有已经提交的更改在主干和新   更改已准备好提交。

为什么“您想用git reset HEAD取消登台?”

git stash会推动什么? git stash仅隐藏工作目录,还是同时隐藏工作目录和索引?

谢谢。

1 个答案:

答案 0 :(得分:1)

尽管这里可能还有其他我们不知道的上下文,但是在存储之前进行未登台的过程中:git stash 确实存储索引以及工作树。 / p>

git-stash手册页开始:

  

当您想记录工作目录的当前状态和索引但要返回到干净的工作目录时,请使用git stash

(重点是我的)

我在备用仓库上尝试过以确认它,是的:

$ git stash
Saved working directory and index state WIP on master: 4dea0a2 Fonction ...

我不能(也不希望)断定所提供的建议是不好的,因为我也不知道底层的上下文,但是我错过了一些东西,或者这是一个谨慎的步骤,因此有些无用/无害在此过程中。