代码之家  ›  专栏  ›  技术社区  ›  Ender

如何将一个Git回购覆盖在另一个回购上?

  •  0
  • Ender  · 技术社区  · 3 年前

    我有一个Jekyll主题,我想从GitLab中克隆它。所以我在本地目录中克隆了这个主题。

    然后我有一堆文件,我想覆盖(或修改)在那个主题中,我想单独存储这些文件,而不是作为主题的一部分。这让我可以选择在本地运行我的主题(我需要安装主题的地方),或者作为远程主题运行,在那里我更改配置,主题会在GitLab上远程调用(据说)。

    所以,我试图克隆主题,然后将我的文件覆盖在上面,它应该会运行。如果我需要从主题转发中提取修复程序,我会提取,然后再次将我的文件覆盖在上面。

    但我不确定如何使用Git。有人能评论吗?

    0 回复  |  直到 3 年前
        1
  •  2
  •   Blindy    3 年前

    嗯,我似乎不能像平时那样处理我的代码,因为我想要一个单独的回购,我必须时刻注意,不要破坏它所在的那个,所以有很多联系在一起

    这是一堆随机串在一起的英语单词,其中没有任何部分是有意义的。我想非常清楚地说明为什么我没有把它们考虑在内。

    鉴于以上情况,以及我对你最初问题的总体理解,这似乎很琐碎。

    1. 首先将主题克隆到您自己的存储库中 master 树枝您的存储库现在只有一堆来自远程存储库的提交。

    2. 从顶部创建一个分支 主人 并称之为 additions 。现在您可以提交更改并提交所有内容。您的存储库现在有两个分支, 主人 使用原始代码和 添加 您的代码从顶部分支 主人 。继续在这家分店工作。

    3. 稍后,您的远程主题存储库会发布更新,并且您希望将它们集成到您自己更改的主题中。你很难结账 主人 再次,并因此恢复到第一次获得存储库时的状态,然后获得新的更改并将其提交给 主人 。由于您没有对分支进行任何更改,因此这应该很正常。

    4. 现在你需要更新你真正关心的分支,所以你可以签出 添加 并合并 主人 解决任何合并冲突(如果有的话)并提交。如果您需要进行其他更改,请使用此分支,如果您想用更多更改更新主题,请返回上一步。

        2
  •  1
  •   Ender    3 年前

    我发现我可以将代码保存在一个分支中,然后根据这篇文章将该分支分离到自己的存储库中。。。 How do I move a Git branch out into its own repository?

    这使我能够将代码保持在类似于Jekyll处理远程主题的状态,使我的代码与主题分离。然后,如果在本地进行测试,我可以稍后将此回购的一个分支合并回主题回购的一个子分支。