由于存在未合并的文件,无法进行Git pull。

6
我刚刚尝试将服务器上的master分支替换为另一个分支,因为master已经损坏,我似乎无法解决错误......

我替换的分支是我拥有的最后一个工作版本。我通过从我的本地机器运行以下命令来实现:

git checkout lastWorkingBranch

git merge -s ours master

git checkout master

git merge lastWorkingBranch master

git push origin master

然后,在服务器上,我运行了

git pull origin master

但是,这给出了以下输出:

Pull is not possible because you have unmerged files.
Please, fix them up in the work tree, and then use 'git add/rm <file>'
as appropriate to mark resolution, or use 'git commit -a'.
root@moon:/code/moon# git stash
costing/views.py: needs merge
tools.py: needs merge
costing/views.py: needs merge
tools.py: needs merge
costing/views.py: unmerged (395725168ffab1962655116880b74158de3e1e56)
costing/views.py: unmerged (95ff89d4160135c2ebefd67a0fc1af2f2a0abc74)
costing/views.py: unmerged (902f9ff57c808cefd074f3ea07fb252f9eedb4e2)
tools.py: unmerged (6832dd3197f838a52396381c30ef55069e24411b)
tools.py: unmerged (24e8179f7689ffacdd50407259f3a12b3d3f609a)
tools.py: unmerged (93b3d0baa5f1b75c85120cc2e7cab7dcd949b9a5)
fatal: git-write-tree: error building trees
Cannot save the current index state

我在本地尝试重新提交和推送代码后,再次在服务器上运行了“pull”命令,现在收到以下消息:
``` U costing/views.py U tools.py 无法拉取代码,因为您有未合并的文件。 请在工作树中修复它们,然后使用 'git add/rm' 标记解决方案,或使用 'git commit -a' 命令。 root@moon:/code/moon# ```
我不明白为什么会出现这种情况?我已经合并和推送了所有文件-如何在工作树中修复它们呢?

这个回答是否解决了你的问题?为什么git会说“无法pull因为您有未合并的文件”? - Flimm
2个回答

11

您有一些未合并的文件。因此,首先要将这些文件进行commitstash

$ git commit -am <message>          # add and commit
$ git pull origin master            # pull origin

Or,
$ git add .                         
$ git stash                         # remove the files
$ git pull origin master

让我们在聊天中继续这个讨论 - Sajib Khan
我该怎么做?自从上次它工作以来,我没有改变服务器的配置...我只是进行了“软重置”,但实际上我没有改变任何服务器设置... - Noble-Surfer

0

首先执行git stash命令-->您将获得具有冲突的文件 然后使用Git add文件名并按Enter键 然后输入git pull


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接