2015-09-20 72 views
0

嘿傢伙我有一個子模塊的主要回購,我打算在大多數文件作爲一個新的分支。雖然主要的回購不需要推到遠程主機我的子模塊可能需要。給我正在作爲新的分支(主要和子模塊)的文件工作,我問以下問題: -作爲主要文件跟蹤子模塊

  1. 我應該通過主repo跟蹤submodules文件嗎?
  2. 無論提交還是不提交,子模塊中的更改是否立即反映在主庫中?
  3. 可以跟蹤主repo中子模塊的特定文件嗎?
  4. 如果我在子模塊中進行更改,我必須在子模塊中執行兩個提交操作,並在主要回購操作系統上執行一個操作,否則我可以自動執行此過程,還是可以從主要回購提交一個提交?

回答

0

主回購軌道子模塊與gitlink,一個special entry in the index

這意味着子模塊中的任何修改都必須提交併推送到其上游回購站,然後在主回購庫中提交。

所以:

  1. 我應該通過主回購跟蹤的子模塊的文件嗎?

否:主倉庫只跟蹤當前子模塊HEAD SHA1作爲gitlink。

  1. 無論提交或不提交,子模塊中的更改是否立即反映在主repo中?

的子模塊僅僅是在主回購的子文件夾:任何的變化是明顯的從主回購,因爲子文件夾是可見的。
但是,只有在子模塊添加,提交併推送所述更改並且主回購已完成時,纔會記錄此更改(意味着其他人將能夠克隆主回購庫並在子模塊中看到相同的更改)相同(用於記錄新gitlink條目)

  • 它是確定以跟蹤主回購從子模塊的特定文件?
  • 主回購只跟蹤gitlink,沒有別的。
    主回購也可以指定(在.gitmodules)它想要track a branch of the submodule,這意味着它將子模塊更新到最新的分支。

  • 如果我讓在子模塊我必須做兩次提交一個在子模塊和一個在主回購我可以自動完成這一過程或我可以使一個提交更改從主要回購?
  • 是的,需要兩個提交(和兩個git push)。

    +0

    感謝您的反饋......確定事件會有它我做了一些'git add'到子模塊(子模塊只是一個子文件夾),因爲在子模塊中做出的一些更改是特定於項目的,並且會不要推到回購...所以我會解開他們 – Kendall