如何强制GitHub Fork(源)获取存储库(上游)版本

如何强制GitHub Fork(源)获取存储库(上游)版本,git,github,Git,Github,我在GitHub上遇到了一些问题。我在上游岔口的一根树枝上做了几次尝试。然后,我们创建了一个新分支,其中我们不希望移动最近的更改,但GitHub也将这些提交复制到了新分支。我想将我的原始分支重置为与上游分支相同,而不需要我进行新的提交。我试过好几种方法,但似乎没有一种方法能达到我所需要的效果。我尝试重新设置我的源分支的基础,但现在它希望我将来自其他参与者的所有提交从我的源分支合并到上游分支。不过,所有这些提交都已经在上游。有没有一种方法可以让我在不影响上游或其他分支中的任何内容的情况下完全重置我

我在GitHub上遇到了一些问题。我在上游岔口的一根树枝上做了几次尝试。然后,我们创建了一个新分支,其中我们不希望移动最近的更改,但GitHub也将这些提交复制到了新分支。我想将我的原始分支重置为与上游分支相同,而不需要我进行新的提交。我试过好几种方法,但似乎没有一种方法能达到我所需要的效果。我尝试重新设置我的源分支的基础,但现在它希望我将来自其他参与者的所有提交从我的源分支合并到上游分支。不过,所有这些提交都已经在上游。有没有一种方法可以让我在不影响上游或其他分支中的任何内容的情况下完全重置我的原始分支,然后将所有内容从上游拉下来并推送到我的原始分支?

git checkout new\u branch
git checkout new_branch
git reset --hard <SHA of last upstream commit>
git重置——硬
首先,您需要像这样中止重设基础:

git rebase --abort
然后,您可以执行以下两项操作之一:

git checkout upstream -t git://github.com/user/repo
git branch -D master 
# I am assuming master is where you made the commits you wish to lose
git branch -m upstream master
或者您可以找到主服务器和上游服务器之间的最后一个公共提交,然后执行

git reset --hard commit_sha
git pull git://github.com/user/repo
如果然后计划更新GitHub主分支,则需要使用

git push --force