结账后出现意外变化

时间:2016-03-20 07:26:36

标签: git

我有一个远程GIT存储库,我在本地克隆。

之后我将分支更改为另一个,什么都不做,然后尝试更改为另一个分支,GIT说有未提交的更改!?!

如果我没有做任何事情只改变了分支,世界上会有怎样的变化。

在控制台中查看此操作。

enter image description here

我确实设置了

git config --system core.autocrlf false

但它没有帮助。

这里发生了什么,从未见过这样的行为。致力于perftech分支的人就像我一样在Windows下工作。

THX

1 个答案:

答案 0 :(得分:1)

<强>更新
经过长时间的聊天 - 我们发现了问题: 这个项目有多个贡献者,其中一个设置了与导致问题的其他CRLF值不同的CRLF值。

<强>解决方案:
确保所有团队都使用相同的CRLf配置来避免这些问题。

如何查看更改内容?

首先看看发生了什么变化,然后尝试理解文件是如何被修改的。

git log HEAD^..HEAD

# to view the diff by words instead of lines:
git diff --color-words!

一旦你看到这些变化,就试着找出它们来自哪里。

如果filemode更新了这些文件,请确认您没有跟踪chmod

Git有一种称为 3个州

的东西

enter image description here

这三个州是你的

  • 工作目录
  • 指数/舞台区域
  • 存储库

这个结构的重要部分(与你的问题相关)是:

工作目录&amp;&amp;结帐分支

后,共享区域不会被修改

这意味着如果您切换分支,它们将保持在先前状态,并对您所做的所有更改。

唯一的变化是HEAD 为了理解HEAD读到的内容,它将详细解释git中的HEAD

How to move HEAD back to a previous location? (Detached head)