2017-08-25 87 views
1

我已经创建并编辑了一个fork,并提交了一个pull请求。然而,它有很多提交,我想删除一些不相关的提交。我该怎么做呢?如何清理GitHub拉取请求?

我看了很多其他的答案(如this之一),但他们都解决了一些不同的问题,因为我是GitHub的新手,我不知道如何将它们放在一起。

谢谢。

+2

寻找壁球,(互动)rebase和力量推动。只需删除/编辑分支中的提交并执行强制推送。 – Julian

回答

1

互动变基通常工作,并且几乎总是一个更好的解决方案(详情here)。但是,我遇到了问题,不得不以不同的方式进行讨论。

1)再克隆叉子到另一个位置,这样的:

git clone /your-username/your-repo 

2)从上游(细节重新启动叉here):

git remote add upstream /url/to/original/repo 
git fetch upstream 
git checkout master 
git reset --hard upstream/master 
git push origin master --force` 

3)更换中的相关文件回购并提交更改。再次进行必要更改后:

git commit -m "<commit message>" 
git push origin <relevant-branch> 

希望这可以帮助某人一段时间。

-1

对于您可以转到以前提交使用

git checkout {commit_id} 为提交ID,您可以使用 git log

之后,你可以做新的所需更改提交。

对于进一步阅读git-checkout Git log