git - git:将本地分支合并到不同的上游/主分支
问题描述
所以我有一个本地克隆的存储库,我在新分支中对其进行了一些更改,同时从上游维护主分支。我对 master 分支的早期提交的修改现在有所不同,因为很多 master 分支已经发生了实质性的变化。特别是一个文件,我对其进行了多次更改,已在上游拆分为三个文件,我想将我的编辑合并到其中一个文件中。但是由于新文件的名称与之前的名称完全不同,我担心通用合并会引起很多复杂性(请参阅下文,了解我的意思);出于同样的原因,生成差异/补丁也不起作用。我怎样才能让我的分支与上游融合?
作为参考,我在https://github.com/brihadeesh/elegant-emacs/tree/dev上的分支
你可能会在 master 分支中注意到,elegance.el
(虽然它仍然存在)被分成两个主题文件,现在是什么elegant.el
为了使我的分支与 master 保持一致(除了我添加的一些其他文件),我必须将我的更改从dev/elegance.el
into合并master/elegant.el
,同时适应上游的更改。
解决方案
我做了一些思考,可能已经找到了一种方法来做到这一点。
- 我首先通过从我的分支运行将新文件添加
elegant.el
到我的分支:
git checkout master elegant.el
elegance.el
用我的反对版本生成一个差异elegant.el
(因为它们在技术上具有相同的结构),然后手动修补每个差异块,以验证没有一个块添加以前删除的代码位。检查并合并到 master 以供我使用,也许设置一个不同的分支来获取/合并上游/master 提交。
有人可以在我尝试时验证这一点吗?
推荐阅读
- python - 将映射对象转换为具有四个变量的已定义函数的值
- azure - 无法在同一资源组中创建 Linux 功能应用(消费计划)和 Linux 应用服务计划
- python - Conda 仅在输入后显示 input() 提示
- python - 烧瓶-wtforms。QuerySelectField 运行时错误
- java - Java 将一个对象转换为他的超类,然后将其转换回自身,从而保留引用
- dask - Dask groupby 关于期货
- html - 从 Django 为初学者获取 /static/css/base.css HTTP/1.1" 404 1660
- mysql - 如何在 GROUP_CONCAT 中使用选择别名?
- javascript - 为什么这个滚动代码在接近 div 的底部时会中断?
- reactjs - React-router.Problem with layouts,看不到其他路由