【问题标题】:GitBucket: error: Your local changes to the following files would be overwritten by mergeGitBucket:错误:您对以下文件的本地更改将被合并覆盖
【发布时间】:2025-11-22 21:20:03
【问题描述】:

我到处搜索并尝试了各种解决方案,但仍然出现错误: 您对以下文件的本地更改将被合并覆盖

我没有什么可提交的,因为状态告诉我以下内容:

  # On branch develop
  # Your branch is behind 'origin/develop' by 1 commit, and can be fast-forwarded.
  #   (use "git pull" to update your local branch)
  #
  nothing to commit, working directory clean

然后我做一个 git pull,然后得到以下内容:

  Updating 67020e6..6dd23de
  error: Your local changes to the following files would be overwritten by merge:
app/filename.php
  Please, commit your changes or stash them before you can merge.
  Aborting

但是因为我没有什么要提交的,如果我执行 git stash 我得到 没有要保存的本地更改

那么我该如何解决问题并使用远程修改下载和更新我的本地计算机。

历史记录: 我必须在家里安装一台本地机器,然后工作我已经在家里完成了修改并推送了它们,现在我正在尝试使用这些更新来更新我的本地工作机器。

编辑更新 由于我有一段时间无法回答自己的问题,所以我找到了对我来说解决了这个答案的方法:

在我写的分支上:

    git reset --hard

然后拉动起作用了。

【问题讨论】:

  • 这似乎是一件小事,但将你的代词大写,如“I”而不是“i”实际上有很大帮助,因为这样其他人就不必去编辑你的问题了为您将它们大写,这是人们出于大量慷慨而经常做的事情。您可以通过自己的努力帮助我们帮助您。
  • 在某种程度上我很抱歉,但是当你有某种形式的阅读障碍时,我也会觉得它很冒犯,对于那些没有英语作为第一语言的人也可能有问题,我希望修正我已经根据你的喜好修改了
  • 您的个人资料显示您来自英国,所以我(错误地)认为英语是您的第一语言。无论如何,我对你的冒犯表示诚挚的歉意。
  • 我在英国,但我实际上是威尔士人,但实际上是非洲人,但我不想让你感到厌烦,这不是问题,我无意冒犯
  • 源存储库是否在网络共享驱动器上?在共享驱动器上使用存储库时,我在 OSX 上看到了这一点。见my question here

标签: macos git bitbucket


【解决方案1】:

环顾四周时,我尝试了以下方法,当时似乎解决了我的问题。

在我写的分支上。

   git reset --hard

【讨论】:

    【解决方案2】:

    你以前做过git update-index --assume-unchanged <file>吗?这可能是您遇到这种情况的潜在原因。

    要修复,请执行git update-index --no-assume-unchanged <file>。然后您应该能够存储您的更改并继续合并。

    【讨论】:

      【解决方案3】:

      面临完全相同的问题。在开始探索 git 之前,我已经习惯了 CVS。我认为运行git pull --rebase origin master 是适合您和我使用的工作流的方式。 有关更详细的说明,请参阅https://www.atlassian.com/git/workflows#!workflow-centralized。我肯定知道答案在那篇文章的某个地方,但我没有完全理解这篇文章。

      【讨论】:

        最近更新 更多