Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更改git基分支_Git_Github_Rebase - Fatal编程技术网

更改git基分支

更改git基分支,git,github,rebase,Git,Github,Rebase,我有一个发布分支,MO-1334就是从这个分支分支出来的。MO-3119是MO-1334的一个分支。现在MO-1334被合并回发布分支,我不想在我的MO-3119请求中显示它的所有提交(我尝试在Github UI上创建PR草稿,选择发布分支作为基础,并看到MO-1334的提交,这不是我想要的-那些已经被审查过了!) 请注意,我试着遵循这一点,并在Android Studio的git视图中看到了这一点: 这里-当从Github UI查看它时,“release/7.1.0”实际上不仅包含从代码库中

我有一个发布分支,MO-1334就是从这个分支分支出来的。MO-3119是MO-1334的一个分支。现在MO-1334被合并回发布分支,我不想在我的MO-3119请求中显示它的所有提交(我尝试在Github UI上创建PR草稿,选择发布分支作为基础,并看到MO-1334的提交,这不是我想要的-那些已经被审查过了!)

请注意,我试着遵循这一点,并在Android Studio的git视图中看到了这一点:

这里-当从Github UI查看它时,“release/7.1.0”实际上不仅包含
从代码库中删除86兆字节的垃圾
,而且还包含从合并的MO-1334请求中提交的内容:

现在这太让人困惑了,所以我转到Github UI并尝试为MO-3119创建一个pull请求,得到以下结果:

请注意: 1.来自MO-1334的提交仍然存在,我明确地想“隐藏”它们(基本上基于已经合并了MO-1334的发布分支) 2.由于某种奇怪的原因,我的MO-3119提交被复制

请帮我解决这个问题,并一步一步地记录下我下次应该做什么

我最终做了什么:

  • 克隆了repo fresh,签出了release分支
  • 创建了一个新分支,
    MO-3119\u已修复
  • cherry在上面选择了
    MO-3119
    提交
  • 推送
    MO-3119\u固定
    并删除
    MO-3119

  • 很好,很简单,工作起来很有魅力。

    作为记录,我做了
    git checkout MO-3119
    git-rebase--release/7.1.0 MO-1334 MO-3119
    git pull
    git push
    ;看见当您使用
    git rebase
    时,您会告诉git复制(一些)提交,然后停止使用原始提交(改用新的副本),但由于每个分支都与其他分支相当独立,其他分支会继续使用原始提交。这很好,但仍然过于理论化,帮我把它应用到给定的问题上怎么样?不幸的是,我现在没有时间再写一篇关于如何处理这个问题的长篇文章。对于其他类似的问题,我确实有现成的答案。您的
    rebase--on
    显然走在了正确的轨道上:剩下的诀窍在于确定要让Git复制的提交,以便它只复制您想要复制的提交。