我是git的新手,我仍然试图全面掌握fork,起源,上游和分支如何工作。如何修复我损坏的本地git repo分支并重新绑定我的Github分叉?
我在Github中创建了一个fork,创建了fork的本地副本,确定了我的上游和原始分支,并创建了一个“newbranch”。我在我的本地'newbranch'上完成了自己的开发工作,将它推到了Github的fork上,并创建了一个pull请求回到上游的repo。然后我在Github上直接在叉子上做了一些修改。后来,我在没有从Github更新的情况下对本地副本进行了更改。我已经通过Github fork中的'newbranch'合并解决了这个问题。
到目前为止,这么好。但是,我现在一直试图从上游回购更新我的分支并遇到麻烦。
提交更改我的“newbranch”和他们推到叉后,我做了以下内容:
git fetch upstream
git checkout master
git merge upstream/master
这导致数以千计的冲突。我做了一个重置来退出合并,但仍然留下了成千上万的修改文件在分支,我无法弄清楚如何清理它们。
我从上游回购的'devel'分支创建'newbranch'。如果你想知道为什么我搞乱了'master'分支,那就让我们两个人。
我的Github fork说我的'devel'分支在上游回购后面有4万个提交。我想清理本地回购,从上游回购更新本地'devel'和'newbranch'分支,并将这些更改同步到我的Github分支。
任何帮助摆脱这个混乱非常感激。
这真的是唯一的方法吗?分叉的存储库没有被损坏,并且我向上游的repo提交了一个pull请求。但是,似乎我本地回购中的'主'分支已经损坏。我会非常高兴地倾销我的本地回购,并从Github重新加载它,因为它应该包括我的'newbranch'。这会工作吗?然后从上游更新本地回购并将这些更新推送到Github分叉的步骤是什么? – sthames42
它可能不是唯一的方式,但当你完全搞砸时,我觉得它很简单。 – Peddipaga
感谢您的回复。我认为我很难理解你的解决方案,但是我认为如果我有这个方案会更容易。完成重建我的本地回购。现在都好。 – sthames42