我在主分支中有一个旧的、不同步的项目代码。已删除、添加、重写和彻底编辑了几个文件。我想强制将稳定的最新代码从开发分支合并到master中。我正在尝试强制合并,但仍然会遇到合并冲突。
以下是我遵循的步骤:
➜ project git:(development) git checkout master
➜ project git:(master) git pull
➜ project git:(master) git merge -s recursive -X theirs development
CONFLICT (modify/delete): vendors/popup/magnific-popup.css deleted in HEAD and modified in development. Version development of vendors/popup/magnific-popup.css left in tree.
CONFLICT (modify/delete): vendors/popup/jquery.magnific-popup.min.js deleted in HEAD and modified in development. Version development of vendors/popup/jquery.magnific-popup.min.js left in tree.
CONFLICT (modify/delete): vendors/owl-carousel/assets/animated.css deleted in HEAD and modified in development. Version development of vendors/owl-carousel/assets/animated.css left in tree.
... several similar conflicts
我尝试对我的主分支中的所有文件执行rm
➜ project git:(master) git reset --hard HEAD
➜ project git:(master) rm -rf *
➜ project git:(master) git merge -s recursive -X theirs development
仍然会得到相同的冲突。我做错了什么?
编辑:
这是一张图表,可以更好地了解正在发生的事情。在某种程度上,不相关的历史也被推送了。
发布于 2019-03-25 08:42:43
这只会将master
设置为与您的development
分支相同-在上次合并development
之后提交的任何主分支都将丢失。
git checkout -B master development
发布于 2019-03-25 08:28:02
分支只是一个指针,而master
只是另一个分支。如果您还没有合并更改,而dev
代表了项目的当前稳定状态,那么可以避免所有冲突的一个选择是:
git branch -m master <new-name>
git branch -m dev master
可能需要调整跟踪关系,这取决于您如何设置遥控器。
https://stackoverflow.com/questions/55329564
复制相似问题