将gist repo转移到github

时间:2012-12-02 16:40:20

标签: git github gist

我正在开发一个带有要点的小项目,因为它正在增长,我想把它放在github上。

我们假设:

理想的解决方案是在gist和github存储库上推送我的更改。

5 个答案:

答案 0 :(得分:49)

您可以将github存储库作为远程添加到已签出的gist存储库。

git clone git@gist.github.com:1234.git
git remote add github git@github.com:ChrisJamesC/myNewProject.git

推送它来初始化github上的git

git push -u github master
  

如果您的github repo不是相当为空(您使用README,许可证等创建了它,您不介意丢失),您将不得不在推送时强制覆盖

git push -f -u github master
     

如果您不想丢失现有的提交和文件,请参阅https://stackoverflow.com/a/40408059/117471

这也将改变分支的上游,因此github将是默认的。

您现在可以重命名要点的遥控器:

git remote rename origin gist

每次进行更改(或从github / gist中提取更改)时,您都可以执行以下操作:

git push                 # To github
git push gist master     # To gist

这也会将你的更改推回到gist,而不仅仅是github repo。

答案 1 :(得分:38)

Github现在有一个新功能 - 从另一个存储库导入。所以步骤很简单:

  1. 使用import feature并指定存储库的URL。
  2. 利润!
  3. 更新

    您不必创建回购。右上角的 + 按钮现在有' Import Repository'作为一种选择。

    screenshot from github

答案 2 :(得分:4)

将要点(例如git clone git://gist.github.com/123.git)克隆到您的本地硬盘,然后设置origin的新网址(例如git remote set-url origin https://github.com/ChrisJamesC/myNewProject)。推送到新存储库(git push origin master)。快乐的gitting!

答案 3 :(得分:4)

对于摇动一个旧问题并且我不能评论感到抱歉,但是在gzm0给出的第二步中你可能不得不使用--force,即

git push -f -u github master

可能是因为Github回购中有README,但我猜其他人也可能会遇到这种情况。

答案 4 :(得分:1)

我对已接受答案的编辑变得越来越长,所以我创建了一个单独的答案来持有它。

如果您的回购不是空的并且您不想丢失现有的提交和文件, accepted answer不适用于您。您必须:< / p>

  1. 如果你不关心要点的提交历史......
    • 复制文件,git addgit commit
  2. 如果你想保留要点的提交历史......