Git Submodule ਤੁਹਾਨੂੰ ਇੱਕ Git ਰਿਪੋਜ਼ਟਰੀ ਨੂੰ ਇੱਕ ਸਬ-ਡਾਇਰੈਕਟਰੀ ਦੇ ਰੂਪ ਵਿੱਚ ਕਿਸੇ ਹੋਰ Git ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਏਮਬੈਡ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ। ਇਹ ਉਦੋਂ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਤੁਹਾਡੇ ਕੋਲ ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਹੈ ਜੋ ਲਾਇਬ੍ਰੇਰੀ ਜਾਂ ਬਾਹਰੀ ਹਿੱਸੇ 'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ। ਇੱਥੇ ਵਰਤਣ ਦੇ ਤਰੀਕੇ ਬਾਰੇ ਇੱਕ ਬੁਨਿਆਦੀ ਗਾਈਡ ਹੈ Git Submodule:
ਸ਼ਾਮਲ ਕਰੋ Submodule
ਮੌਜੂਦਾ ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਇੱਕ ਜੋੜਨ ਲਈ Submodule, ਰਿਪੋਜ਼ਟਰੀ ਦੀ ਰੂਟ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਜਾਓ ਅਤੇ ਹੇਠ ਦਿੱਤੀ ਕਮਾਂਡ ਚਲਾਓ:
git submodule add <URL_repository> <destination_path>
<URL_repository> ਰਿਪੋਜ਼ਟਰੀ ਦਾ URL ਕਿੱਥੇ ਹੈ ਜਿਸਨੂੰ ਤੁਸੀਂ ਏਮਬੇਡ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਅਤੇ <destination_path> ਮੌਜੂਦਾ ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਸਬ-ਡਾਇਰੈਕਟਰੀ ਦਾ ਮਾਰਗ ਹੈ Submodule ।
ਕਲੋਨ Submodule
Submodule ਇੱਕ ਵਾਰ ਜਦੋਂ ਤੁਸੀਂ ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਇੱਕ ਜੋੜ ਲੈਂਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਇਸਨੂੰ ਮੌਜੂਦਾ ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਕਲੋਨ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਨੂੰ ਕਲੋਨ ਕਰਨ ਲਈ Submodule, ਹੇਠ ਲਿਖੀਆਂ ਕਮਾਂਡਾਂ ਚਲਾਓ:
git submodule init
git submodule update
ਕਮਾਂਡ git submodule init ਸ਼ੁਰੂ ਕਰਦੀ ਹੈ Submodule ਅਤੇ ਸਬਮੋਡਿਊਲ ਵਾਲੀ ਰਿਪੋਜ਼ਟਰੀ ਲਈ ਲਿੰਕ ਬਣਾਉਂਦੀ ਹੈ। ਕਮਾਂਡ git submodule update ਦੇ ਸਰੋਤ ਕੋਡ ਨੂੰ ਡਾਉਨਲੋਡ ਕਰਦੀ ਹੈ Submodule ਅਤੇ ਇਸ ਨੂੰ ਸੰਬੰਧਿਤ ਸਬ-ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਅੱਪਡੇਟ ਕਰਦੀ ਹੈ
.
ਨਾਲ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ Submodule
ਇੱਕ ਵਾਰ Submodule ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਕਲੋਨ ਹੋ ਜਾਣ ਤੋਂ ਬਾਅਦ, ਤੁਸੀਂ ਇੱਕ ਸੁਤੰਤਰ ਗਿੱਟ ਰਿਪੋਜ਼ਟਰੀ ਵਜੋਂ ਇਸ ਨਾਲ ਕੰਮ ਕਰ ਸਕਦੇ ਹੋ। ਤੁਸੀਂ ਸ਼ਾਖਾਵਾਂ ਨੂੰ ਚੈੱਕਆਉਟ ਕਰ ਸਕਦੇ ਹੋ, ਬਣਾ ਸਕਦੇ ਹੋ commits, ਅਤੇ ਅੰਦਰ ਧੱਕ ਸਕਦੇ ਹੋ Submodule ।
ਮੌਜੂਦਾ ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਸਬਮੋਡਿਊਲ ਨੂੰ ਅੱਪਡੇਟ ਕਰਨ ਲਈ, ਕਮਾਂਡ ਚਲਾਓ:
git submodule update --remote
ਇਹ ਕਮਾਂਡ ਰਿਪੋਜ਼ਟਰੀ ਤੋਂ ਨਵੀਨਤਮ ਤਬਦੀਲੀਆਂ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰਦੀ ਹੈ Submodule ਅਤੇ ਸੰਬੰਧਿਤ ਸਬ-ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਅੱਪਡੇਟ ਕਰਦੀ ਹੈ।
ਹਟਾਓ Submodule
ਜੇਕਰ ਤੁਹਾਨੂੰ ਹੁਣ ਲੋੜ ਨਹੀਂ ਹੈ Submodule, ਤਾਂ ਤੁਸੀਂ ਹੇਠ ਲਿਖੀਆਂ ਕਮਾਂਡਾਂ ਚਲਾ ਕੇ ਇਸਨੂੰ ਹਟਾ ਸਕਦੇ ਹੋ:
git submodule deinit <submodule_name>
git rm <submodule_path>
<submodule_name> ਦੇ ਨਾਮ ਨਾਲ Submodule ਅਤੇ <submodule_path> ਸਬ-ਡਾਇਰੈਕਟਰੀ ਦੇ ਮਾਰਗ ਨਾਲ ਬਦਲੋ ਜਿਸ ਵਿੱਚ Submodule. ਫਿਰ, ਤੁਹਾਨੂੰ ਇਸ ਤਬਦੀਲੀ ਨੂੰ ਵਚਨਬੱਧ ਅਤੇ ਧੱਕਣ ਦੀ ਲੋੜ ਹੈ।
Git Submodule ਨਿਰਭਰਤਾ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨ ਅਤੇ ਤੁਹਾਡੇ ਮੁੱਖ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਸਬ-ਰਿਪੋਜ਼ਟਰੀਆਂ ਨੂੰ ਆਸਾਨੀ ਨਾਲ ਜੋੜਨ ਵਿੱਚ ਤੁਹਾਡੀ ਮਦਦ ਕਰਦਾ ਹੈ। ਇਹ ਤੁਹਾਨੂੰ ਲਈ ਵੱਖਰੇ ਸਰੋਤ ਕੋਡ ਨੂੰ ਕਾਇਮ ਰੱਖਣ Submodule ਅਤੇ ਲੋੜ ਪੈਣ 'ਤੇ ਇਸਨੂੰ ਆਸਾਨੀ ਨਾਲ ਅਪਡੇਟ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ।

