gpt4 book ai didi

git - checkout 后的意外变化

转载 作者:太空狗 更新时间:2023-10-29 14:17:57 27 4
gpt4 key购买 nike

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

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

如果我什么都不做只是改变了分支,世界上怎么会有变化。

在控制台中查看此操作。

enter image description here

我确实设置了

git config --system core.autocrlf false

但是没有用。

这是怎么回事,从来没见过这样的行为。致力于 perftech 分支的人和我一样在 Windows 下工作。

谢谢

最佳答案

更新:
经过长时间的聊天 - 我们发现了问题:这个项目有多个贡献者,其中一个与其他人设置了不同的 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

这3个状态是你的

  • 工作目录
  • 索引/舞台区
  • 存储库

此结构的重要部分(与您的问题相关)是:

工作目录和暂存区是共享的,一旦你 checkout 分支就不会修改

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

唯一改变的是你的HEAD
要了解什么是 HEAD,请阅读此内容,它将详细解释 git 中的 HEAD 是什么:

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

关于git - checkout 后的意外变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36111248/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com