从现有的仓库中提取并更新另一个仓库错误?

时间:2019-05-17 20:36:15

标签: git

我想在Github上克隆存储库,处理一些代码,然后将其推送到我的个人存储库中。基本上,我希望能够从其他人定期发布的一个存储库中提取代码,然后将我的代码推送到我自己的存储库中。我有一台Macbook,如果有帮助的话。

到目前为止我所做的:

  1. 在Github上创建了一个空的仓库

  2. 将其克隆到我在桌面上创建的文件夹(git clone URL

  3. 在该文件夹中添加了远程仓库(我从中提取的仓库)(git remote add Name URL

  4. 试图将文件推送到我的仓库(git add 文件,git commit等)。

我希望它允许我推送,但是相反,如果我查看状态,则会收到此错误,并且似乎无法添加任何内容:

On branch master
Your branch and 'origin/master' have diverged,
and have 92 and 1 different commits each, respectively.
  (use "git pull" to merge the remote branch into yours)

nothing to commit, working tree clean

有人知道如何解决此问题吗?我也尝试过

git reset --hard origin/master

但这只是擦除了我拉出的许多文件。

1 个答案:

答案 0 :(得分:0)

首先,当您在GitHub上创建一个空存储库时,请确保它实际上是空的。

  

分别具有92和1个不同的提交。

这意味着GitHub存储库具有一个提交(通常为README文件)。
没关系:您将能够强制推送到该GitHub存储库,并通过提交和内容覆盖其(小的)历史记录。

第二,无需克隆任何东西:如果您已经从个人存储库中克隆了一个文件夹(工作所在),只需在该文件夹中做

git config --add remote.origin.pushurl https://github.com/<me>/<my-empty-repo>.git

然后任何git push都将推送到您的个人存储库也推送到GitHub。

第一次推送可能需要使用git push --force,以覆盖GitHub的内容和历史记录。