跑步和跑步有什么区别
git submodule update --remote
与
cd <submodule directoy>
git pull
假设子模块先前已设置为跟踪某些分支:
git submodule add -b master [URL to Git repo]
最佳答案
区别在于:
git pull
仅会更新您的子模块分支,但可以是您可以在该子模块存储库中 checkout 自己的任何分支。 git submodule update --remote
将仅更新在.gitmodule
中注册的分支,并且默认情况下,您将以分离的HEAD结束,除非指定了--rebase
或--merge
或键submodule.$name.update
设置为rebase
,merge
或none
。 在这两种情况下,您仍然必须返回到父存储库,添加并提交新的子模块SHA1引用。
这是因为在这两种情况下,子模块的SHA1都会发生变化,这意味着必须添加并提交 gitlink (父存储库的special entry in the index,以子模块的根文件夹命名)。
git submodule update --init --remote
类似于:git submodule init
:初始化( checkout )在索引git submodule update --remote
:一旦子模块已初始化( checkout ),则从注册的分支(默认为master)中拉出。