2017-10-16 63 views
0

简单的git功能问题。我创建了一个新分支,检出该分支,并对newbranch进行了更改。在第一次提交newbranch之前,我看到在从master和newbranch执行git status时会显示这些更改。如果我在新分支上进行这些更改,他们会在主人面前展示。直到我将这些变化交给新手才能让主人看起来是分开的。 A)我疯了吗? B)这背后的逻辑是什么?Git:直到第一次提交才反映到主分支上的新分支更改

还有一个类似的问题here没有答案。

+0

我想有相当多的解决这个问题的答案,[这是我的](https://stackoverflow.com/a/40324524/1290731)。 – jthill

+0

我已经把它作为一个副本来关闭,但是我会在这里添加,对于这种特殊情况,您有两个分支名称*指向相同的提交*,所以任何名称的'git checkout'都会使* no *更改为按定义,索引或工作树。因此它总是可以工作,并且总是简单地更新'HEAD'来包含新的目标分支名称(并且别无其他)。 – torek

回答

1

由于您没有阶段性变化,它们只存在于工作空间中,您可以根据需要多次切换分支。如果你对它们进行阶段化,那么它们就是'安排'下一次提交,但是你仍然可以在提交之前改变分支。

此行为是正确的。在某些情况下,您可能会开始在一个分支上工作,但想要承诺另一个分支。这是典型的情况,例如您需要发送代码审查的小改动,或者为了快速修复错误。

相关问题