Когда вы вносите изменения в папку подмодуля, вам необходимо зафиксировать и нажать прямо в эту папку. Когда фиксация подмодуля будет нажата, вам нужно будет перейти в родительскую папку, а затем сделать дополнительную фиксацию с измененной ссылкой на подмодуль, а затем нажать эту фиксацию.
Вот пример:
# current folder is parent project
cd submodule-git
# making changes in submodule
touch new-file
git add new-file
git commit -m "new file was added"
git push origin master
cd ..
# changing reference to new commit in the parent project
git add submodule-git
git commit -m "updated submodule"
git push origin master
Иногда вы не можете использовать удаленный URL по умолчанию подмодуля нажать изменения. Например, если вы использовали URL только для чтения, вы можете добавить дополнительный пульт только в подмодуль и использовать его вместо источника. Вот пример:
# current folder is parent project
cd submodule-git
# adding new remote with name 'write-origin' and ssh://[email protected]/project.git
git remote add write-origin ssh://[email protected]/project.git
# making changes in submodule and creating new commit
git push write-origin master