【问题标题】:Git Submodule or Git Subtree :What shoud I use to achieve below?Git Subtree 中的 Git 子模块:我应该用什么来实现下面的?
【发布时间】:2015-09-06 16:00:32
【问题描述】:

我有 2 个项目:不同 git 遥控器中的 SUPERPROJECT 和 SUBPROJECT。 我希望对 SUBPROJECT 进行更改并添加文件,但不将其推送到克隆它的 SUBPROJECT 的远程。

我想将“SUBPROJECT”的代码推送到“SUPERPROJECT”的远程仓库而不将更改推送到“SUBPROJECT”的实际远程

基本上,'subproject'('ssh://..../prod/subproject') 的实际远程是一些重要的存储库,如果代码推送到 reivew,则会向更广泛的受众发送通知。

我不想这样做,我想将“SUBPROJECT”代码(带有 somefile.js)推送到我的“超级项目”,以便我可以测试 somefile.js。

我希望 SUBPROJECT 的本地存储库中的代码位于“SUPERPROJECT”中,而不会将其推送到“SUBPROJECT”的远程。

P.S.:我尝试过使用子模块并没有很好的体验。还没有任何功能。现在我不确定是应该花时间浏览子树还是坚持使用子模块。

【问题讨论】:

    标签: git git-submodules git-subtree


    【解决方案1】:

    我认为 git submodule 仍然是要走的路,但是您可以分叉您自己的 SUBPROJECT 版本并将您的更改推送到该版本,直到它们合并到原始版本。在 SUPERPROJECT 中,您可以来回切换要包含的 SUBPROJECT 副本。例如,SUPER 的不同分支可能包含不同版本的 SUB。

    【讨论】:

    • :恐怕我在用 Gerrit ;我们可以用 Gerrit 做吗?如果是,如何?我用谷歌搜索并找不到方法。
    • SUPER 和 SUB 都有自己的仓库。所以我认为你只是对每个使用 Gerrit,就好像它们是单独的项目一样。
    • 对不起,如果我太天真了,但我不明白。问题是我无法将更改发布到子项目的远程。我可以推送到超级远程。你能帮忙理解一下吗?
    • 分叉子项目的副本。因此,当您将更改推送到它时,您正在推送到您的副本。
    • 我们可以使用 Gerrit 吗?那是 GitHub 特有的。如果可以的话,你能告诉我怎么做吗?
    猜你喜欢
    • 2012-07-29
    • 2015-04-20
    • 2017-03-28
    • 1970-01-01
    • 1970-01-01
    • 2015-10-25
    • 2013-09-17
    • 1970-01-01
    • 2011-10-05
    相关资源
    最近更新 更多