在github上拉远程主分支的问题

时间:2018-07-27 08:24:12

标签: git github pull

我正在尝试将github上的远程主存储库拉到我的本地计算机,以便我可以进行更改,然后再推回主数据库,但是当我尝试将其拉到我的本地计算机时遇到以下错误。

developer@Codys-MacBook-Pro-3:~/everest-web$ sudo git pull 
https://github.com/everest-software/everest-web.git
From https://github.com/everest-software/everest-web
* branch            HEAD       -> FETCH_HEAD
fatal: refusing to merge unrelated histories

不确定该怎么做,因为将我的机器与github同步至关重要。

2 个答案:

答案 0 :(得分:0)

您在本地是一个仓库,但其中包含的历史与github不同。如何最好地解决此问题取决于为什么。您在评论中提到日志很长,这表明此回购代表了一个项目的历史记录,大概与您要与之同步的项目不同。 (如果是同一项目,那么您将需要弄清楚如何为同一项目获得两个不相关的历史记录,以及如何解决该问题;但是现在我要我继续以并非如此的假设。)

所以直接要做的就是为此项目创建一个新的本地仓库。您可以使用git clone进行此操作,这将为您初始化一个新的存储库并使用github历史记录填充它。 (执行此操作时,您实际上并不是真的希望仍在现有的本地存储库中。由于我不知道如何在本地计算机上组织事物,因此我无法确切地说出您应该在哪里;但是例如您有一个目录,用于存放本地存储库,cd,然后在您的github URL中输入git clone命令。)

可以通过几种不同的方式将遥控器的历史记录添加到现有存储库中。 clone的替代方法是

git init
git remote origin add <github-url>
git pull

但这不会导致您看到的错误,除非您在init之后和pull之前创建至少一个提交。

答案 1 :(得分:-1)

我首先设置本地存储库时遇到此错误。然后转到github并创建一个新的存储库。然后我跑了

git远程添加来源

当我尝试推/拉时,我遇到了同样的致命错误:Unrelated_histories错误。这是我的解决方法:

git pull origin master --allow-unrelated-histories git merge origin origin / master ...在此处添加并提交... git push原始主机