Github在拉取请求历史记录中显示不相关的提交

时间:2013-08-14 13:41:59

标签: git github pull-request

我正在使用this image与Github描述的“标准”流程,即:

我还希望根据我的需要修改树中的某些文件(例如构建规则)。我希望这些更改出现在upstream HEAD中并传播到新创建的分支。

因此,github show显示了我在创建分支之前完成的所有合并的历史记录(请参阅pull#334)。单击Files Changed选项卡时,可以看到它报告“2个已更改的文件,包含141个添加和23个删除”,但显示的差异包含最多50个更改。我得出结论,这些数字也会在历史记录中的其他提交中发生变化。

我想要实现的目标:

  • 拉取请求中的更改历史记录仅显示相关更改。
  • 统计数据说实话(例如“2个已更改的文件,包含23个添加和18个删除”)。

我应该在流程和/或存储库中更改哪些内容以满足需求?提前谢谢。

1 个答案:

答案 0 :(得分:2)

最简单的解决方案可能只是将您提交拉取请求的原始分支的更改重新定义为(可能是主要的)。

git rebase my-feature-branch --onto origin/master <current branch base>

其中my-feature-branch是包含要为其提交拉取请求的要素的分支,而<current branch base>是拉出请求中您想要的第一次提交之前的提交。

将来,您可以通过将功能分支基于已经存在的提交来避免这些混乱的提交,并且只在pull请求中对该分支进行提交。

例如,要从origin/master创建新分支:

git fetch origin # Make sure origin/master is up to date
git checkout origin/master
git checkout -b "new_branch"
# Now do work on this branch.
# Don't make commits here that you don't want in the pull request