我有一个父项目,其中包含以下的.gitmodules
文件。
[submodule "src/redux"]
path = src/redux
url = git@github.com:username/sub-package.git
branch = master
以下是我用来克隆父项目以确保子模块设置正确的步骤。
git clone git@github.com:username/parent-project.git
git submodule init
git submodule update
之后,我将子模块的内容放在了父项目中。然而,子模块的HEAD处于分离状态。这是我没有做对的第一个迹象。由于父项目的.gitmodules
文件指向主分支,我期望它应该在主分支上。
git checkout master
git branch -u origin/master master
当我回到父项目并运行git status时,子模块中有一个未提交的更改。
我觉得在初始设置时不应该进行这种更改。如果这样做,所有克隆项目的开发人员在设置本地环境时也会有自己独特的初始提交。我做错了什么?
.gitsubmodules
中的branch = master
有什么好处。 - David