我正試圖為一個結構如下的應用程式設定一個適當的分支策略。
以下是該應用程式的目錄結構
|______SuperApp
| |______CommonCode
| |
|______App1
| |
|______App2
|
|_____ InfraStructureCode
SuperApp由多個微型應用程式組成,只要公共代碼和基礎設施代碼目錄存在,就可以獨立開發/作業。
我們想設定的限制條件是:
i) 開發人員可以獨立開發/作業。
i) 在特定應用程式(例如 App1)上作業的開發人員不應獲得推送與公共代碼或基礎設施代碼相關的更改。
目前,我們使用
來實作這個目標
git update-index --skip-worktree <DirectorytoSKIP>
ii) 在每個應用程式之間保持一定程度的原子性,如App1 , App2等,
(i.e.,) 目前,如果我們從開發中創建一個新的分支,在例如App1中添加一個新的功能,所有其他的應用程式目錄(App2,App3)也將被包括在內。因此,為了保持原子性,是否有更好的分支策略?
事實上,我們希望一個特性分支只包含公共代碼、基礎架構代碼和正在開發的特定微應用程式(App1)。
然而,在主分支或發布分支中,我們希望維護整個應用程式(如上圖所示的目錄結構)。
uj5u.com熱心網友回復:
分支是用來隔離一個或幾個Git倉庫的開發作業的。 而不是在 "一個Git倉庫的一部分"。
你需要一個Git倉庫。
你需要為每個模塊(app、common、lib)建立一個Git倉庫,這允許你使用子模塊,根據你的需要組成這些模塊。
對于每個使用上述子模塊的父版本庫,你將能夠應用你想要的分支策略,而不必擔心 "隱藏 "某些子檔案夾。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/332527.html
標籤:
