当合并时没有更改任何内容时,Git状态报告已更改的文件

时间:2016-11-15 15:01:41

标签: git github version-control

我有一个包含超过1350个提交和几个分支的git存储库。每当我想从Github中取出一些变化时,我就陷入了一堆文件被修改的情况,但它们并非如此。它们总是一样的,我可以放弃那些变化"直到我同时运行" git checkout"和" git reset"以不同的顺序命令随机时间。

有人知道发生了什么事吗?存储库的大小可以吗?如果是的话,有什么我可以做的,以减少像删除旧提交或类似的东西的大小?

任何帮助都将不胜感激。

此致

修改

当我从大师那里拉出来时,也会发生这个问题。这就是我重现这个问题的方法:

  1. 我在本地仓库中提交了一个文件
  2. 仓库是干净的,没有任何待处理的东西。
  3. 我首先从远程
  4. 获取最新更改
  5. Git报告说,某些更改将通过合并进行覆盖,但这些文件在我的提交或远程的待处理提交中未被更改。
  6. 即使我的同事使用与我相同的操作系统(我使用的是Ubuntu),这个问题也会随机发生。

1 个答案:

答案 0 :(得分:0)

一堆文件已被修改肯定是由out-sync引起的,换句话说,本地存储库和GitHub上的远程服务器的提交历史记录是不同的。在从远程拉取之前,您需要验证以下步骤:

  1. git fetch,从远程获取并将其放入.git文件夹,它对您的本地仓库工作目录和舞台区域没有影响
  2. 将您的本地分支切换为A,git checkout A
  3. 查找存在于本地分支A但不存在于远程分支origin / A中的out-sync提交。 git log origin/A..A,如果命令后有输出,则需要先将更改推送到远程,然后再重复执行这些步骤。
  4. 查找存在于远程分支origin / A但不存在于本地分支A git log A..origin/A中的out-sync提交,如果它在命令后有输出,则意味着您需要从远程分支。
  5. 注意:从遥控器拉出之前,请确保step3没有输出。

相关问题