There is a project yyy, inside it is a submodule xxx. I only work with xxx, i.e. only submodule. After performing the task and change, being in the submodule folder. Do I need to go higher, commit and push the whole project, and not just the submodule?
1 answer
After publishing (push) changes in the subproject (submodule), you need to change the "pointer" in the main project to the version of the subproject.
Example:
# ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ ΠΊΡΠ΄Π° Π²Π΅Π΄ΡΡ ΡΠ΅ΠΊΡΡΠ°Ρ ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡ$ git ls-tree -r HEAD | grep 'ΠΌΠΎΠ΄ΡΠ»Ρ' 160000 commit 02148269395c1bc239c9db78a80dd85fc836a4dd ΠΌΠΎΠ΄ΡΠ»Ρ # ΠΎΠΏΡΠ±Π»ΠΈΠΊΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΠΏΡΠΎΠ΅ΠΊΡ$ pushd ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡ/ΠΌΠΎΠ΄ΡΠ»Ρ$ git add myfile.c ΠΏΡΠΎΠ΅ΠΊΡ/ΠΌΠΎΠ΄ΡΠ»Ρ$ git commit -m "..." ΠΏΡΠΎΠ΅ΠΊΡ/ΠΌΠΎΠ΄ΡΠ»Ρ$ git push ΠΏΡΠΎΠ΅ΠΊΡ/ΠΌΠΎΠ΄ΡΠ»Ρ$ # ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΡΡΡΠ»ΠΊΠ° Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π²ΡΡ Π΅ΡΡ ΠΏΡΠ΅ΠΆΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ/ΠΌΠΎΠ΄ΡΠ»Ρ$ popd ΠΏΡΠΎΠ΅ΠΊΡ$ git ls-tree -r HEAD | grep 'ΠΌΠΎΠ΄ΡΠ»Ρ' 160000 commit 02148269395c1bc239c9db78a80dd85fc836a4dd ΠΌΠΎΠ΄ΡΠ»Ρ # ΠΎΠ±Π½ΠΎΠ²ΠΈΠΌ ΡΡΡΠ»ΠΊΡ ΠΈΠ· ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡ$ git add ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡ$ git commit -m "Π½ΠΎΠ²Π°Ρ, ΡΠ»ΡΡΡΠ΅Π½Π½Π°Ρ Π²Π΅ΡΡΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ" ΠΏΡΠΎΠ΅ΠΊΡ$ git push ΠΏΡΠΎΠ΅ΠΊΡ$ git ls-tree -r HEAD | grep 'ΠΌΠΎΠ΄ΡΠ»Ρ' 160000 commit 5c2591854c69c6512232be4b2adffa70ef9ed944 ΠΌΠΎΠ΄ΡΠ»Ρ
|