我觉得我可能已经把事情弄得很糟糕了,我应该把所有东西都核实并重做它,我不记得我做了什么来阻止它。
我有一个从其他人分叉的远程仓库。我从他们的repo做了一个pull请求到我自己,以便我可以更新它。 (我认为这是我的错误。)。
我正在尝试使用原始< s的CONTRIBUTING.md上发布的方法从我的远程仓库下载到我的本地仓库,但我遇到以下问题:
C:\Users\Daniel\Documents\Workspace\Cataclysm-DDA>git pull --ff-only upstream master
From https://github.com/CleverRaven/Cataclysm-DDA
* branch master -> FETCH_HEAD
fatal: refusing to merge unrelated histories
我已阅读以下内容,但它也不起作用:
C:\Users\Daniel\Documents\Workspace\Cataclysm-DDA>git pull --ff-only upstream master --allow-unrelated-histories
From https://github.com/CleverRaven/Cataclysm-DDA
* branch master -> FETCH_HEAD
fatal: Not possible to fast-forward, aborting.
我相信我有这个"快进"问题,因为我在我的github repo上有以下内容:"这个分支比CleverRaven提前1次提交:master。",我认为这是因为我对DanielPBak fork做了一个pull请求,它添加了历史记录,但我不知道如何a)撤消拉取请求并摆脱提交,以及b)如何正确同步。
https://github.com/CleverRaven/Cataclysm-DDA/blob/master/.github/CONTRIBUTING.md
有关于如何正确更新我的fork和本地repo的说明,但我觉得一些小错误并且尝试修复这些错误已经阻止了我的回购。
答案 0 :(得分:2)
看起来你打破了这个指示:
- 保持主分支清洁。这意味着您可以轻松地将对此存储库所做的更改拖到您的存储库中。
- 为每个新功能或相关错误修复集创建一个新分支。
- 永远不要从您当地的分支机构合并到您的主分支机构。只能通过从上游/主站拉取来更新。
您应该重命名本地master
:
git checkout master
git branch -M master-old
然后结帐远程master
:
git fetch upstream
git checkout upstream/master -b master
更新您在本地修复master
上使用的已损坏的远程master
:
git push --force [remote] master