如何在保留git历史的同时,在我不拥有的远程回购下移动仅本地且没有远程的git回购?

如何在保留git历史的同时,在我不拥有的远程回购下移动仅本地且没有远程的git回购?,git,github,version-control,Git,Github,Version Control,我有一个本地git repomy_local_repo,有一些提交,但没有关联的远程 我现在想将此回购移动到名为sandbox的远程回购下的文件夹foo下,该远程回购由其他人管理,但我已被邀请。 我希望我的本地回购的git历史记录保存在远程数据库中 因此,在合并之后,我希望远程回购看起来像: 沙箱 福 我的本地回购协议 将来,my_local_repo可能会作为自己的生产代码的repo被移动,这样就可以保存自己的git历史 我该怎么做?与此相关的问题和答案很多,但无法找到确切的解

我有一个本地git repo
my_local_repo
,有一些提交,但没有关联的远程

我现在想将此回购移动到名为
sandbox
的远程回购下的文件夹
foo
下,该远程回购由其他人管理,但我已被邀请。 我希望我的本地回购的git历史记录保存在远程数据库中

因此,在合并之后,我希望远程回购看起来像:

  • 沙箱
      • 我的本地回购协议
将来,my_local_repo可能会作为自己的生产代码的repo被移动,这样就可以保存自己的git历史


我该怎么做?与此相关的问题和答案很多,但无法找到确切的解决方案。

git子模块似乎适合您的需求。我认为您也计划将本地回购托管在服务器上

  • 克隆沙箱
  • 搬到富
  • git子模块添加
  • 但是,对于git子模块,您需要遵循一个特定的工作流。 请参考以下链接中的文档


    关于如何配置和使用。

    通常,子模块是从另一个远程设备获取的

    我不明白为什么,但看起来您希望将项目作为子模块发布到第三方共享回购,而不创建新的远程存储库(不在您这边,也不在第三方那边)。
    如果我误解了,请纠正我


    有一种方法可以解决这个问题:在现有共享回购协议上的一组专用参考文件下推动您的本地项目:

    # either as regular branches, prefixed with a chosen name :
    git push upstream master:refs/heads/subproject/master
    
    # or under refs which wouldn't be listed as regular branches or tags :
    git push upstream master:refs/subproject/master
    

    如果第三方同意,那么您可以将您的项目作为子模块包含,该子模块将从同一远程设备获取其数据。

    远程设备是sandbox,foo位于sandbox下,而我的回购仅限于本地。你能更新这些步骤吗?他们似乎相反地处理这个问题。我可以克隆沙盒,在它下面添加foo文件夹。现在,我如何在foo下添加我的本地回购my_repo,以便保留我的回购历史?@Anand:让您的本地回购可用应该是简单的部分:选择托管服务(例如:与
    沙箱
    项目相同的托管服务),创建一个空项目并将您的repo推送到新的远程位置。@LeGEC我希望此本地repo位于另一个人管理的远程位置下。@Anand,假设sandbox位于github上,您可以自己在github上托管您的本地\u repo,然后按照上述步骤操作。@Anand:好的:问那个人您应该将本地repo推到哪里您可以使用
    git filter branch
    。。。祝你好运也许
    git子树
    能帮上忙吗?
    myu-local\u-repo
    会变成什么?您是否仍希望以完全独立的回购协议(即子模块方式)的形式访问它?或者你希望它只是sanboxrepo的一部分吗?@LeGEC(编辑):实际上作为子模块更好,因为我可能希望将来将我的本地回购转为生产回购。解释原因,不是实际情况,而是类似的。考虑到我为客户工作,代码就是它们的属性。他们不想让我把他们的代码保存在我的git repo中。他们想把它保存在遥控器里。他们希望我将代码签入他们的远程设备的沙箱中,直到满足所有验收标准,然后将其作为远程设备中的顶级回购进行移动。他们的业务中对顶级回购也有严格的标准,所以我不会在他们的远程设备上创建顶级回购,直到它满足他们的要求。“在沙箱下的远程设备中”:这一部分需要澄清:要么有东西要推,要么没有。与第三方核实他们所说的“沙箱”是什么意思:它是现有回购协议中具有给定约定的分支机构吗?一个不被标记为“顶级”的完全独立的回购协议?还有别的吗?