簡體   English   中英

從多個存儲庫移動到一個單一存儲庫(在 GitLab 上)

[英]Move from multiple repositories to a monorepo (on GitLab)

我已經創建了一個具有前端和后端的應用程序,我已將每個服務推送到托管在 GitLab 上的不同 git 存儲庫中。 現在我想將這兩個存儲庫合並到一個存儲庫中以擁有一個 monorepo 並制作我的管道,而每個服務都將位於不同的目錄中而不會丟失任何分支或更改。 我試圖拿來並更換遙控器,但它一團糟,我想要一個更干凈的工作。 知道怎么做嗎?

如果您將具有不同歷史的不同軟件片段合並到一個存儲庫中,它將變得一團糟。 這不是應該使用版本控制的方式。

對於要單獨進行版本控制但仍由一個存儲庫中的單個軟件使用的項目,每個組件應該有一個存儲庫。 這將允許您以可管理和可記錄的方式單獨微調部署過程,更重要的是,保持歷史記錄干凈。 想象一下,將來您會尋找一個特定組件的一個特定版本。 它會在您的項目歷史中丟失,畢竟,它甚至不是所述子組件的歷史。

但是,如果您需要將項目互連並受通用版本控制,則有一個解決方案: submodules 在此處查看官方文檔。 它將允許您跟蹤個人歷史並同時共享資源。 可以無縫集成到您的管道中。 此外,它還可以讓您對共享空間中每個項目的版本進行不同的控制。

所以我對你的問題的解決方案:重構。 將項目分離到單獨的存儲庫中,每個存儲庫都有自己的部署策略工作得很好。 然后,為了互連它們並共享資源,使它們成為您希望它們與其他軟件一起工作的項目的子模塊:創建一個新的存儲庫並將它們作為子模塊添加。

暫無
暫無

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

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