我正在从事一个长期的大型项目。在开发过程中,我决定回拨一些功能并推出MVP。我从master分支创建了一个新分支,并删除了所有将来的功能。
=====> master
+==========> deleted-and-changed-mvp
然后我部署了。但是,master
应该是我的起源分支。我将master
分叉到一个新分支,并将MVP合并为master。
=====> master
+==========> deleted-and-changed-mvp
+> original-master
现在,我想将新功能堆叠在master之上,但是不能,因为它认为20年代后出现了。如何将该分支移至master之上?
================> master
+> original-master
我希望在删除的文件中优先考虑original-master
,在修改/添加的文件中优先考虑{1>}。
答案 0 :(得分:1)
(注意:我不确定我是否理解您想要实现的目标)
您可以轻松地将original-master
压缩为master
之上的{>
# from original-master :
git reset --soft master
git commit
使用这些命令,您现在将提交:
original-master
master
上您现在可以从master
中选择所需的任何内容:
git checkout master -- fileA fileB dir1 dir2 ...
# or if you bluntly want "all the files that exist on master" :
git checkout master -- .
一旦您对内容满意:
git commit
# or
git commit --amend
答案 1 :(得分:0)
我最终只是简单地与master合并,然后还原单个提交以撤消文件删除。