我有以下git status
,我需要摆脱下面的两个插件:
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# unmerged: vendor/plugins/pluginA
# unmerged: vendor/plugins/pluginB
问题是我有一个存储库,其中包含一些在我们和客户端之间共享的分支:
master (代码的客户端版本)
生产(我们的生产版代码)
开发(我们的代码开发版本)
我们需要开始使用master
进行更改,我需要单独留下production
和development
。我创建了一个新的“合并”分支(基于开发)并合并了master的代码。不幸的是,它给我们留下了上面的两个插件问题。这些已在master
中删除,但仍在development
分支中。合并时我有以下消息:
CONFLICT(目录/文件):HEAD中有一个名为vendor / plugins / pluginA的目录。添加vendor / plugins / pluginA作为vendor / plugins / pluginA~master
由于我试图获取master
版本,我该如何删除插件?似乎大多数其他已删除的文件已正确合并。
谢谢!
答案 0 :(得分:10)
您遇到了冲突,因为当文件时,git在vendor/plugins/pluginA
中找到了目录(development
目录)在合并的远程(vendor/plugins/pluginA
中的master
文件)中找到。
由于无法将文件与目录合并,因此git会在vendor/plugins/pluginA~master
中复制主数据(以避免丢失数据),并留下需要手动解决的冲突
移动/重命名/删除/复制/编辑/无论这些文件是什么,以使您的代码处于所需状态,然后git add
更改并git commit
解决冲突。