簡體   English   中英

如何將兩個 git 存儲庫作為一個存儲庫進行管理,但又保持獨立?

[英]How to manage two git repos as a single repo, yet stay separate?

我已經看到了關於此的其他問題,但無法將它們與相同的問題聯系起來。

我有一個從GitHub克隆的主題,它成為master分支。

然后我在最初克隆的主題中為我的網頁內容創建一個新的本地分支,我想將我的頁面內容檢入我自己在 GitLab 上的存儲庫,因此我為內容分支添加遠程存儲庫。 此時,主遠程與分支遠程不同。

通過不將我的內容分支合並到 master,我總是可以從更新 web 主題的 master 的遠程拉取,然后切換到內容分支並開發/更新我的內容。 所以他們是分開的,沒有合並的意圖。

然后問題就變成了……為了運行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 頁面需要將發布就緒版本作為master推送到您的 GitLab 存儲庫。

為了實現這一點,您需要記住的是,您的 GitHub 和 GitLab 存儲庫上的master分支不需要相關聯,即使您有一個指向兩個遠程的沙箱,如您所描述的。

要創建一個本地分支,我們稱之為publish ,它指向您的 GitLab 的master分支並將其與 GitHub 上模板的 master 分支區分開來,您可以這樣做:

git checkout develop
git checkout -b publish
git branch -u gitlab/master

現在,當您在本地分支publish並將所有內容合並到您想要發布的狀態時,運行git push它將使用您的本地publish分支更新gitlab/master

假設:

  • 您在 GitLab 上調用了您的第二個遙控器gitlab ,例如,通過運行:

    git remote add gitlab URL_TO_YOUR_GITLAB_REPO

  • gitlab遠程上已經有一個master分支。

  • 您之前已經從gitlab獲取,例如,通過運行git fetch gitlab ,以便您的沙箱引用gitlab/master

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM