混淆git分支和主交互

时间:2012-08-27 15:21:51

标签: git git-branch

我在当地工作。 我检查了一个分支“b1”并做了一些工作。 我想保持分支“b1”的方式,但是回到主人那里,就像我检查出“b1”之前一样。但是当我用“git checkout master”检查master时,我在分支中所做的所有更改都已经在master中,没有任何提交或合并。我做错了什么?

2 个答案:

答案 0 :(得分:1)

在再次签出b1之前,您是否已将更改提交至master

如果您在切换分支之前未提交或存储更改,则更改将保留在本地文件中,因此将显示您已签出的分支。

答案 1 :(得分:0)

如果您对分支b1所做的更改会被签出master覆盖,那么git不会让您在没有存储更改或将更改提交给指数。您会收到以下类型的错误

error: Your local changes to the following files would be overwritten by checkout:
    /src/path/to/conflicting/file.java
Please, commit your changes or stash them before you can switch branches.

如果结账顺利通过(没有你提交任何东西)那么两个分支之间就没有冲突,git会保持工作树的原样。

您需要做的是结帐b1在那里提交您所做的所有更改,并希望将其本地化为b1,然后结帐master。现在,更改不应位于master分支中。