SourceTree子模块更新 - 为什么要执行?

时间:2017-06-11 00:56:54

标签: git atlassian-sourcetree

每次我通过SourceTree切换到不同的分支时,它执行此命令(除了切换分支命令)

git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree submodule update --init --recursive 

有什么意义?

1 个答案:

答案 0 :(得分:1)

子模块在父仓库中被引用为 gitlink ,一个special entry in the index,它指向子仓库的SHA1。

无论何时切换分支,该条目都可以更改,这意味着应该在不同的SHA1再次检出子仓库。

这正是git submodule update --init的作用。

  

initupdate子命令将维护子模块,并在工作树中以适当的版本进行检查。