这个问题是关于git行为的明显不一致。 不是,关于如何解决“无法重新设置基础”的问题-我已经知道。
我们都处在这种情况下:进行一些本地更改,并且在准备提交时意识到我们在错误的分支中。因此,我们需要先切换分支:
git checkout master
git pull
我的问题是:有时在执行结帐时,会收到消息“错误:对以下文件的本地更改将被结帐覆盖:”;在其他时候,检出工作正常,我发现已对修改后的文件进行了一些合并,但是在进行拉取时会显示消息“无法使用rebase进行拉取:您有未暂存的更改”。为什么错误并非总是在结帐时出现,还是总是在拉出时出现?
答案 0 :(得分:0)
错误error: Your local changes to the following files would be overwritten by checkout
并不总是出现在checkout
上,因为即使您有本地更改,结帐也不会总是覆盖您的本地更改。
换句话说,git不会仅仅因为您具有本地更改而禁止签出新更改, 除非其中包括对具有本地更改的特定文件的更改。
因此,当chekcout破坏文件时,您会遇到第一个错误。否则,结帐就可以了,但是您会遇到第二个错误。