【发布时间】:2012-04-27 07:50:51
【问题描述】:
我在本地使用 git 已经有一段时间了,并且有一个包含完整更改历史等的私有存储库。我现在想在 GitHub 上分享它,所以我需要从本地存储库克隆到新的 GitHub 存储库。我找不到任何方法来做到这一点。如何将我的所有历史记录上传到 GitHub?
【问题讨论】:
我在本地使用 git 已经有一段时间了,并且有一个包含完整更改历史等的私有存储库。我现在想在 GitHub 上分享它,所以我需要从本地存储库克隆到新的 GitHub 存储库。我找不到任何方法来做到这一点。如何将我的所有历史记录上传到 GitHub?
【问题讨论】:
您不需要“克隆到 GitHub”。您只需在 GitHub 上创建一个存储库并将您的更改推送到那里:
$ cd your_local_repo
$ git remote add origin git@github.com:USERNAME/REPO_NAME.git
$ git push origin master
【讨论】:
git push --tags推送它们。
--mirror 和 -u 可能是一个明智的选择:git push --mirror -u origin
clone 复制存储库中的所有分支,而不仅仅是 master 分支。如果这是真的,那么按照答案中的说明进行操作似乎与从远程位置运行 clone 产生的效果不同。有没有办法修改指令,使其与从远程位置运行clone 具有更接近相同的效果?
您只想在 GitHub 上的帐户上创建一个新存储库。假设您的帐户名称是 CraigH,并且您称您为新存储库 NewRepo(我知道这很有想象力),您只需(假设您在系统上正确设置了 GitHub 密钥):
git remote add origin git@github.com:CraigH/NewRepo.gitgit push --set-upstream origin master从那时起,您在 master 分支中的历史记录在 GitHub 的 master 分支中。
【讨论】:
您可以通过推送到 GitHub 上的远程仓库来完成此操作。你应该得到整个历史和一切。
【讨论】: