我正在开发一个带有要点的小项目,因为它正在增长,我想把它放在github上 .
我们假设:
我的要点是:https://gist.github.com/1234
我的新(空)回购是:https://github.com/ChrisJamesC/myNewProject
理想的解决方案是在gist和github存储库上推送我的更改 .
Github现在有一个新功能 - 从另一个存储库导入 . 所以步骤很简单:
创建一个新的空白存储库
使用import feature并指定存储库的URL .
利润!
您不必创建仓库 . 右上角的 + 按钮现在有'Import Repository'作为选项 .
您可以将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不是很空(你用自述文件创建它,你不介意丢失),你将不得不在你的push 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 .
将要点(例如 git clone git://gist.github.com/123.git )克隆到本地硬盘,然后设置 origin 的新网址(例如 git remote set-url origin https://github.com/ChrisJamesC/myNewProject ) . 推送到新存储库( git push origin master ) . 快乐的gitting!
git clone git://gist.github.com/123.git
origin
git remote set-url origin https://github.com/ChrisJamesC/myNewProject
git push origin master
很抱歉摇晃了一个老问题,我无法发表评论,但是在gzm0给出的第二步中你可能不得不使用--force,即
git push -f -u github master
可能是因为Github回购中有README,但我猜其他人也可能遇到这种情况 .
您可以在本地克隆要点 .
将github存储库添加为新远程存储库 .
将本地存储库推送到新的github远程 .
删除gist中的所有文件但删除README.md文件 . 在此文件中,您可以写一个提示,即gist已移至新存储库
我对接受的答案的编辑变得越来越长,所以我创建了一个单独的答案来持有它 .
如果您的仓库不是空的,并且您不想丢失现有的提交和文件, the accepted answer doesn't apply to you. 您必须:
如果你不关心要点的提交历史......
复制文件, git add , git commit
git add
git commit
如果你想保留要点的提交历史......
使用git cherry-pick 或 format-patch ,这超出了本答案的范围 . 见Is it possible to cherry-pick a commit from another git repository?
cherry-pick
format-patch
6 回答
Github现在有一个新功能 - 从另一个存储库导入 . 所以步骤很简单:
创建一个新的空白存储库
使用import feature并指定存储库的URL .
利润!
更新:
您不必创建仓库 . 右上角的 + 按钮现在有'Import Repository'作为选项 .
您可以将github存储库作为远程添加到已签出的gist存储库 .
按它来初始化github上的git
这也将改变分支的上游,因此github将是默认的 .
您现在可以重命名要点的遥控器:
每次进行更改(或从github / gist中提取更改),您都可以:
这也将推动您对gist的更改,而不仅仅是github repo .
将要点(例如
git clone git://gist.github.com/123.git
)克隆到本地硬盘,然后设置origin
的新网址(例如git remote set-url origin https://github.com/ChrisJamesC/myNewProject
) . 推送到新存储库(git push origin master
) . 快乐的gitting!很抱歉摇晃了一个老问题,我无法发表评论,但是在gzm0给出的第二步中你可能不得不使用--force,即
可能是因为Github回购中有README,但我猜其他人也可能遇到这种情况 .
您可以在本地克隆要点 .
将github存储库添加为新远程存储库 .
将本地存储库推送到新的github远程 .
删除gist中的所有文件但删除README.md文件 . 在此文件中,您可以写一个提示,即gist已移至新存储库
我对接受的答案的编辑变得越来越长,所以我创建了一个单独的答案来持有它 .
如果您的仓库不是空的,并且您不想丢失现有的提交和文件, the accepted answer doesn't apply to you. 您必须:
如果你不关心要点的提交历史......
复制文件,
git add
,git commit
如果你想保留要点的提交历史......
使用git
cherry-pick
或format-patch
,这超出了本答案的范围 . 见Is it possible to cherry-pick a commit from another git repository?