2012-01-24 105 views
2

我有共享一個共同的庫作爲git子模塊的git項目。 當我對項目進行任何更改時,我總是創建一個git分支來完成我的工作。在測試並給出另一組眼睛之後,我將分支合併回到始終可以部署的主分支。什麼是使用Git子模塊的正確方式

有時我需要對子模塊庫進行更改。最佳實踐是首先分支主項目,然後進入子模塊並分支它?我意識到,那麼我需要在其他使用的項目中測試修改的子模塊分支。有沒有不同的方式來做到這一點?

回答

0

git子模塊本身就是一個項目。因此,分支子模塊的策略由與所有分支決策相同的考慮因素來定義。子模塊是否會同時開發?您是否想要回顧這些變化而不污染主人的歷史?是的,測試也可能是一個考慮因素,但它應該是子模塊的目標,它可以在其他項目中正確地重用。

我有幾個項目使用共享子模塊,它擴展了多分支主項目的工作。我很少看到需要分支子模塊。但有時當然有。

1

要分支或不分支子模塊,這是問題,但這完全取決於您。 如果您的子模塊是一個庫,並且其他項目正在使用它,那麼它必須保持向後兼容。你可以修復它,但不要觸摸它的API。但lib修復實際上屬於lib的主分支。所以我沒有看到在分支主項目時自動分支子模塊的理由。

從技術上講,重要的是:如果您修改並提交子模塊和主項目,請首先推入子模塊,然後再推入主項目。 沒有遞歸推送這樣的事情。

相關問題