[英]Git submodule modified after a git pull, should I push?
我有兩個裸倉庫super
和a
,一個克隆為super
- clone_super
和一個克隆為a
- clone_a
。 我已經將repo a
添加為clone_super
的子模塊。
如果我現在在做一些改變clone_a
,推動那些做一個git pull origin master
在~/clone_super/a
,這將在渲染modify status
的~/clone_super/a
,后顯示git status
在~/clone_super
。
如果我執行git submodule update
, ~/clone_super/a
將恢復為先前的提交。 因此,是否打算在每次更新它們時都需要提交和推送子模塊以獲取它們存在的存儲庫?
簡短的答案是肯定的,更新后必須提交並推送子模塊。
想一想如果目錄不是子模塊,目錄將如何工作,每次更改文件時,都必須提交並推送它。 子模塊完全相同,只是super不會直接跟蹤文件更改。 而是,子模塊內的存儲庫跟蹤文件更改,而超級存儲庫通過跟蹤子模塊中的提交來跟蹤這些更改。
這樣做的好處是它允許以不同的粒度進行跟蹤。 你可以做幾十個輔助模塊修訂不改變超級倉庫,然后作出一個承諾的超級反映在輔助模塊中的變化。 費用是兩次提交的要求。
是的,它的目的,它可以讓你保持在回購的版本歷史a
使用回購的每個版本super
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.