从gitorious导入github?

从gitorious导入github?,git,github,gitorious,Git,Github,Gitorious,有没有人尝试过或想出了如何将一份电子回购协议导入github?我已经在使用github了,我想看看是否有一种方法可以从github的gitorious回购中提取我想要遵循的信息。这与在github上创建存储库的常规方法有何不同 从gitorious克隆存储库 在github上创建新的存储库 将存储库推送到github Github一开始并不关心存储库来自何处,它只接受您推送到它的任何内容。在Github上创建新存储库后,网站立即为您提供3套优雅的个性化说明集。三种不同的选择是: 开始一个新的项目

有没有人尝试过或想出了如何将一份电子回购协议导入github?我已经在使用github了,我想看看是否有一种方法可以从github的gitorious回购中提取我想要遵循的信息。

这与在github上创建存储库的常规方法有何不同

  • 从gitorious克隆存储库
  • 在github上创建新的存储库
  • 将存储库推送到github

  • Github一开始并不关心存储库来自何处,它只接受您推送到它的任何内容。

    在Github上创建新存储库后,网站立即为您提供3套优雅的个性化说明集。三种不同的选择是:

  • 开始一个新的项目
  • 推送现有Git存储库-这就是您想要的
  • 推送现有SVN存储库
  • 如果我的用户名是user1,而新的回购协议名为project1,它会这样说:

    现有的Git回购协议?
    前面的答案是正确的,但这里是一步一步的过程,包括从Gitorious中删除本地副本的缺失步骤;如果没有它,当您尝试将Github添加为新的源时,将出现错误
    致命:远程源已经存在

  • 在Github上创建空的目标回购
  • 将回购从Gitorious克隆到本地
  • 删除Gitorious作为原点
  • 将Github添加为新源
  • 推送到Github
  • 命令:

    git clone git://gitorious.org/USER/REPO.git
    cd REPO
    git remote rm origin
    git remote add origin https://github.com/USER/REPO.git
    git push --mirror https://github.com/USER/REPO.git
    

    显然,您需要替换USER和REPO,在创建Github REPO时,在步骤1之后会为您提供最后两个命令。

    已经给出的答案将只导入master-如果您想导入整个REPO,包括所有分支、标记等,您需要执行以下操作:

    • 创建一个空白的github repo
    • 使用--bare标志克隆gitorious repo-这将保留所有分支/标记,并且不会创建工作副本:

      $ git clone --bare git://gitorious.org/USER/REPO.git
      
    • 将目录更改为本地回购:

      $ cd therepo.git
      
    • 使用--mirror标志将repo推送到github-这将复制所有分支、标记、历史记录等:

      $ git push --mirror git@github.com:USER/REPO.git
      
    • 删除本地副本-您不再需要它,它对任何东西都没有多大用处

      $ cd .. && rm -rf therepo.git
      

    完成后,您可以使用上面给出的
    git remote rm/add
    命令切换任何本地回购。

    我原本打算从gitorious直接转到github,但我想在本地拉入,然后推入就可以了。
    $ cd .. && rm -rf therepo.git