【问题标题】:How to import local git repository to github?如何将本地 git 存储库导入到 github?
【发布时间】:2020-04-27 14:18:46
【问题描述】:

我有一个本地 git 存储库,其中包含已提交的代码。现在我想将存储库导入 github 并保留其提交。到目前为止我做了什么:

我在 github 上创建了一个新的存储库。

我已将它作为远程添加到本地存储库中:

git remote add origin https://github.com/...

git branch --set-upstream-to=origin/master master

但是当我尝试git pull 时,我得到了这个错误:

致命:拒绝合并无关的历史

我听说要切换到 --allow-unrelated-histories,但有一个警告,这可能会导致存储库复杂化。我没试过。

This questions 似乎解决了同样的问题,但答案很老,并没有解决我遇到的问题。

除此之外,我还发现指南假设我有另一个公共存储库,我可以将其 URL 粘贴到某个导入对话框;或者他们认为我根本没有版本控制,只有一堆文件。

【问题讨论】:

  • 您的本地仓库中有哪些代码和提交?你的 GitHub 存储库中有什么?如果其中一个只是空文件或 README 或 LICENSE 等琐碎文件,那么您应该删除它并重新创建一个没有任何历史记录的新空仓库。
  • 本地仓库包含代码。 github 上的那个包含一些自动生成的文件:.gitignore、LICENSE、README.md。

标签: git


【解决方案1】:

听起来您创建了一个带有 README 文件或 LICENSE 文件的 GitHub 存储库。 GitHub 提供为您创建这些,但在您的情况下,您不应该这样做。我建议您删除您的 GitHub 存储库并创建一个新的完全空的存储库。然后执行您已经执行的相同程序:

git remote add origin https://github.com/...
git branch --set-upstream-to=origin/master master

不过,您应该使用git push 将您当前的主分支上传到 GitHub,而不是 git pull

另一方面,如果您的本地存储库不包含代码,则应将其删除并运行以下命令:

git clone https://github.com/...

这将在您运行命令的目录中创建一个新的子目录。该子目录包含一个新的存储库,其中远程正确配置为指向 GitHub 存储库。它还将包含来自 GitHub 存储库的所有分支的远程跟踪分支,并自动签出 master

【讨论】:

    猜你喜欢
    • 2015-06-14
    • 1970-01-01
    • 1970-01-01
    • 2020-09-03
    • 2019-08-10
    • 1970-01-01
    • 2015-06-14
    • 1970-01-01
    • 2017-04-22
    相关资源
    最近更新 更多