Git结账有时会合并,有时会发出警告

时间:2014-02-04 18:47:50

标签: git

我不确定我的做法是什么,

我希望的行为是:

$ git checkout master
error: Your local changes to the following files would be overwritten by checkout:
    test.py
Please, commit your changes or stash them before you can switch branches.
Aborting

但是,在其他存储库中,我得到:

$ git checkout master
M   test.py
Switched to branch 'master'

我检查了两个.config文件,但看不出任何差异。

1 个答案:

答案 0 :(得分:2)

在第一种情况下,master分支包含自您开始在其他分支中工作以来对test.py的更改:

feature (*)       D--E--F
                 /
master       A--B--C

结帐master(修订版C)与您的工作副本更改冲突。

在第二种情况下,master自您开始工作后未对test.py进行任何更改:

feature (*)      D--E--F
                /
master      A--B

签出master(修订版B)与您的工作副本更改不会发生冲突。 DEF未修改test.py