2015-02-24 177 views
1

我有2個項目。 「MyProg」和「SubProj」。
這兩個項目都在Bitbucket上。如何更新git子模塊?

一個項目是第二個子模塊。問題是,當我在主項目中進行更改時,更改子模塊不會被拉出。

也許應該是,或者我做錯了什麼?
我該怎麼做,當您升級一個項目拉第二個項目的變化?

回答

1

的問題是,當我拉主體工程更改,更改子模塊拉不

不要忘了,一個子模塊是固定參照SHA1:它是一個gitlink,a special entry in the index

除非您已將該子模塊配置爲遵循分支,否則它不會移動。
(請參閱「git submodule tracking latest」和「Git submodule new version update」)
在這種情況下,這將更新:

git submodule update --init --remote 

不要忘記添加,提交和推送(父回購)​​的新的參考,如果該子模塊已更新爲更新的SHA1。

+0

我不太瞭解你。我的英文不是很好。我可以這樣做嗎?當我更新主項目時,我希望我的子模塊也自動更新,如果它被更改。 – 2015-02-24 08:08:32

+0

@PavelPetrashov遵循http://stackoverflow.com/a/18799234/6309,然後*然後*更新您的主項目將包括您的子模塊的最新版本(provinding你運行命令'git submodule update --recursive --remote'在'git pull'之後)。 – VonC 2015-02-24 08:10:52

+0

你能知道我是否可以在gradle中自動化這個嗎? – 2015-02-24 08:38:32