如何将两个 git 回购作为一个回购进行管理,但保持分开?
How to manage two git repos as a single repo, yet stay separate?
我看过其他关于此的问题,但无法将它们与相同问题联系起来。
我有一个从 GitHub
克隆的主题,它成为 master
分支。
然后我在最初克隆的主题中为我的网页内容创建了一个新的本地分支,我想将我的页面内容检查到我自己在 GitLab 上的存储库中,所以我为内容分支添加了远程存储库。此时,主遥控器与分支遥控器不同。
通过不将我的内容分支合并到 master,我总是可以从更新 web 主题的 master 的远程拉取,然后切换到内容分支和 develop/update 我的内容。所以它们有点独立,无意合并。
那么问题就变成了...为了运行GitLab Pages
,站点是从master分支生成的。但是我无法将我的内容分支合并到主分支中 1) 因为主分支有远程回购指向别处(原始 GitHub 主题回购),以及 2) 如果我可以从主分支中提取更新,它会覆盖更改在我的内容分支中。
所以我的要求是:
1) I can keep the remote theme seperate from my own content.
2) Add my own content to the theme and develop.
2) Join the theme and the content into a repo on GitLab for Pages to work.
3) Later update just the theme, and then overlay my content on the new theme and continue to develop.
有人知道如何正确组织这个吗?
如果我对您的情况的理解正确,发布到您的 GitLab 页面需要将发布就绪版本推送到您的 GitLab 存储库,如 master
。
为了完成这个,你需要记住的是 GitHub 上的 master
分支和 GitLab 存储库不需要相关,即使你有一个沙箱如您所述,指向两个遥控器。
要创建一个本地分支,我们称它为 publish
,它指向您的 GitLab 的 master
分支,并将其与模板在 GitHub 上的主分支区分开来,您可以这样做:
git checkout develop
git checkout -b publish
git branch -u gitlab/master
现在,当您在本地分支 publish
并以您希望发布的状态将所有内容合并到其中时,运行 git push
它将更新 gitlab/master
与您当地的 publish
分支。
假设:
您在 GitLab 上调用了第二个遥控器 gitlab
,例如 运行ning:
git remote add gitlab URL_TO_YOUR_GITLAB_REPO
gitlab
遥控器上已经有一个 master
分支。
您之前已从 gitlab
获取,例如 运行ning git fetch gitlab
,因此您的沙箱具有对 gitlab/master
的引用.
我看过其他关于此的问题,但无法将它们与相同问题联系起来。
我有一个从 GitHub
克隆的主题,它成为 master
分支。
然后我在最初克隆的主题中为我的网页内容创建了一个新的本地分支,我想将我的页面内容检查到我自己在 GitLab 上的存储库中,所以我为内容分支添加了远程存储库。此时,主遥控器与分支遥控器不同。
通过不将我的内容分支合并到 master,我总是可以从更新 web 主题的 master 的远程拉取,然后切换到内容分支和 develop/update 我的内容。所以它们有点独立,无意合并。
那么问题就变成了...为了运行GitLab Pages
,站点是从master分支生成的。但是我无法将我的内容分支合并到主分支中 1) 因为主分支有远程回购指向别处(原始 GitHub 主题回购),以及 2) 如果我可以从主分支中提取更新,它会覆盖更改在我的内容分支中。
所以我的要求是:
1) I can keep the remote theme seperate from my own content.
2) Add my own content to the theme and develop.
2) Join the theme and the content into a repo on GitLab for Pages to work.
3) Later update just the theme, and then overlay my content on the new theme and continue to develop.
有人知道如何正确组织这个吗?
如果我对您的情况的理解正确,发布到您的 GitLab 页面需要将发布就绪版本推送到您的 GitLab 存储库,如 master
。
为了完成这个,你需要记住的是 GitHub 上的 master
分支和 GitLab 存储库不需要相关,即使你有一个沙箱如您所述,指向两个遥控器。
要创建一个本地分支,我们称它为 publish
,它指向您的 GitLab 的 master
分支,并将其与模板在 GitHub 上的主分支区分开来,您可以这样做:
git checkout develop
git checkout -b publish
git branch -u gitlab/master
现在,当您在本地分支 publish
并以您希望发布的状态将所有内容合并到其中时,运行 git push
它将更新 gitlab/master
与您当地的 publish
分支。
假设:
您在 GitLab 上调用了第二个遥控器
gitlab
,例如 运行ning:git remote add gitlab URL_TO_YOUR_GITLAB_REPO
gitlab
遥控器上已经有一个master
分支。您之前已从
gitlab
获取,例如 运行ninggit fetch gitlab
,因此您的沙箱具有对gitlab/master
的引用.