ਸ਼ੇਅਰ ਮਾਊਂਟ ਹੁੰਦਾ ਹੈ, ਐਡੀਟਰ ਫਾਈਲ ਖੋਲ੍ਹਦਾ ਹੈ, ਅਤੇ ਬਿਲਡ ਫਿਰ ਵੀ ਲੈਪਟਾਪ ਉੱਤੇ ਹੀ ਚੱਲਦਾ ਹੈ। ਕੋਈ ਗਲਤੀ ਨਹੀਂ ਦਿਸਦੀ, ਅਤੇ ਇਹੀ ਗੱਲ ਇਸਨੂੰ ਉਲਝਣ ਭਰਪੂਰ ਬਣਾਉਂਦੀ ਹੈ। ਦੂਰ ਦਾ ਪਾਥ ਦੂਰ ਦੀ ਟੂਲਚੇਨ ਨਹੀਂ ਹੁੰਦੀ, ਅਤੇ ਜੋ ਐਡੀਟਰ ਮਾਊਂਟ ਰਾਹੀਂ ਫਾਈਲ ਪੜ੍ਹ ਸਕਦਾ ਹੈ ਉਹ ਉਸ ਉੱਤੇ ਸਥਾਨਕ ਕੰਪਾਈਲਰ ਨੂੰ ਖੁਸ਼ੀ ਨਾਲ ਬੁਲਾਉਂਦਾ ਹੈ। ਹੱਲ ਇਹ ਹੈ ਕਿ ਸਿਰਫ਼ ਬਾਈਟ ਨਹੀਂ, ਵਰਕਸਪੇਸ ਹਟਾਈ ਜਾਵੇ।

ਮਾਊਂਟ ਕੀਤੀ ਡਾਇਰੈਕਟਰੀ ਵਰਕਸਪੇਸ ਨਹੀਂ ਹੁੰਦੀ

SSH ਜਾਂ SMB ਰਾਹੀਂ ਮਾਊਂਟ ਕਰਨ ਨਾਲ ਤੁਹਾਨੂੰ ਪਾਥ ਮਿਲਦਾ ਹੈ। ਕੰਪਾਈਲਰ, ਬਿਲਡ ਸਿਸਟਮ ਅਤੇ ਡੀਬੱਗਰ ਦੂਰ ਦੇ ਪਾਸਿਓਂ ਆਉਂਦੇ ਹਨ ਜਾਂ ਨਹੀਂ, ਇਹ ਇਸ ਉੱਤੇ ਨਿਰਭਰ ਹੈ ਕਿ ਐਡੀਟਰ ਉਨ੍ਹਾਂ ਨੂੰ ਕਿੱਥੇ ਚਲਾਉਣ ਦਾ ਫ਼ੈਸਲਾ ਕਰਦਾ ਹੈ। ਬਹੁਤ ਸਾਰੇ ਸੈੱਟਅੱਪ ਦੂਰ ਦੀਆਂ ਫਾਈਲਾਂ ਪੜ੍ਹ ਕੇ ਉਨ੍ਹਾਂ ਨੂੰ ਸਥਾਨਕ ਤੌਰ ਉੱਤੇ ਕੰਪਾਈਲ ਕਰਦੇ ਹਨ, ਫਿਰ ਉਸ ਹੈਡਰ ਫਾਈਲ ਉੱਤੇ ਫੇਲ੍ਹ ਹੁੰਦੇ ਹਨ ਜੋ ਸਿਰਫ਼ ਸਰਵਰ ਉੱਤੇ ਹੈ।

ਲੱਛਣ ਸੂਖਮ ਹੈ: ਬਿਲਡ ਅਧੂਰੇ ਨਤੀਜਿਆਂ ਨਾਲ ਸਫਲ ਹੁੰਦਾ ਹੈ, ਜਾਂ ਐਡੀਟਰ ਵਿੱਚ ਸਹੀ ਦਿਸਦੇ ਇਨਕਲੂਡ ਪਾਥ ਉੱਤੇ ਟੁੱਟਦਾ ਹੈ।

ਸਾਬਤ ਕਰੋ ਕਿ ਕਿਹੜਾ ਹੋਸਟ ਜਵਾਬ ਦਿੰਦਾ ਹੈ

ਮਾਊਂਟ ਦੀ ਥਾਂ ਸੱਚੇ ਦੂਰ ਦੇ ਸੈਸ਼ਨ ਨਾਲ ਜੁੜੋ, ਫਿਰ ਉਸ ਸੈਸ਼ਨ ਵਾਲੇ ਟਰਮੀਨਲ ਵਿੱਚ ਤਿੰਨ ਸਿਰਫ਼-ਪੜ੍ਹਨ ਵਾਲੇ ਕਮਾਂਡ ਚਲਾਓ। VS Code ਦੀ SSH ਗਾਈਡ ਦਸਤਾਵੇਜ਼ ਕਰਦੀ ਹੈ ਕਿ ਜੁੜੀ ਦੂਰ ਦੀ ਵਿੰਡੋ ਦਾ ਟਰਮੀਨਲ ਦੂਰ ਦੇ ਹੋਸਟ ਉੱਤੇ ਚੱਲਦਾ ਹੈ ਅਤੇ ਉਹੀ ਸੈਸ਼ਨ ਡੀਬੱਗਿੰਗ ਵੀ ਲੈ ਜਾਂਦਾ ਹੈ। ਜੇ ਸੰਸਥਾ ਦੂਰ ਦੇ ਕੰਪੋਨੈਂਟ ਸੀਮਿਤ ਕਰਦੀ ਹੈ ਤਾਂ ਪਹਿਲਾਂ ਉਨ੍ਹਾਂ ਦੀ ਮਨਜ਼ੂਰੀ ਲਵੋ।

hostname ਉਸ ਮਸ਼ੀਨ ਦਾ ਨਾਮ ਦੱਸਦਾ ਹੈ ਜਿਸ ਉੱਤੇ ਤੁਸੀਂ ਹੋ, pwd ਦਿਖਾਉਂਦਾ ਹੈ ਕਿ ਵਰਕਸਪੇਸ ਅਸਲ ਵਿੱਚ ਕਿੱਥੇ ਹੈ, ਅਤੇ command -v c++ ਉਹ ਕੰਪਾਈਲਰ ਛਾਪਦਾ ਹੈ ਜੋ ਸ਼ੈੱਲ ਚਲਾਉਂਦਾ। ਤਿੰਨੇ ਜਵਾਬ ਲੈਪਟਾਪ ਨਹੀਂ, ਸਰਵਰ ਦਾ ਵਰਣਨ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ।

ਉਹ ਸਾਬਤ ਨਹੀਂ ਕਰਦੇ ਕਿ ਵਰਜ਼ਨ ਜਾਂ ਬਿਲਡ ਕੌਂਫਿਗਰੇਸ਼ਨ ਸਹੀ ਹੈ। ਉਸਨੂੰ ਵੱਖਰੇ ਕਦਮ ਵਜੋਂ ਪ੍ਰੋਜੈਕਟ ਦੀਆਂ ਆਪਣੀਆਂ ਹਦਾਇਤਾਂ ਨਾਲ ਮਿਲਾਓ।

ਇੱਕ ਬਦਲਾਅ ਨੂੰ ਬਿਲਡ ਅਤੇ ਡੀਬੱਗ ਵਿੱਚੋਂ ਲੰਘਦਾ ਦੇਖੋ

ਦੂਰ ਦੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਛੋਟਾ ਬਦਲਾਅ ਕਰੋ ਅਤੇ ਉਹਨੂੰ ਉੱਥੇ ਹੀ ਸੰਭਾਲੋ। ਉਸੇ ਡਾਇਰੈਕਟਰੀ ਤੋਂ ਦਸਤਾਵੇਜ਼ੀ ਬਿਲਡ ਚਲਾਓ ਅਤੇ ਪੱਕਾ ਕਰੋ ਕਿ ਆਉਟਪੁੱਟ ਤੁਹਾਡਾ ਬਦਲਾਅ ਦਿਖਾਉਂਦਾ ਹੈ, ਕਿਤੇ ਹੋਰ ਰੱਖੀ ਪੁਰਾਣੀ ਕਾਪੀ ਨਹੀਂ। ਫਿਰ ਉਸੇ ਦੂਰ ਦੇ ਸੈਸ਼ਨ ਰਾਹੀਂ ਡੀਬੱਗਰ ਸ਼ੁਰੂ ਕਰੋ, ਜਿਸ ਵਿੱਚ ਬਾਈਨਰੀ ਪਾਥ ਅਤੇ ਕੰਮਕਾਜੀ ਡਾਇਰੈਕਟਰੀ ਸਰਵਰ ਦੇ ਬਿਲਡ ਰੁੱਖ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਨ। ਸਰੋਤ ਪਾਥ ਮਿਲਣਾ ਜ਼ਰੂਰੀ ਹੈ, ਕਿਉਂਕਿ ਜੋ ਡੀਬੱਗਰ ਤੁਹਾਡੇ ਬਦਲਾਅ ਨੂੰ ਲੈਪਟਾਪ ਪਾਥ ਨਾਲ ਜੋੜਦਾ ਹੈ ਉਹ ਦੂਜੀ ਫਾਈਲ ਡੀਬੱਗ ਕਰ ਰਿਹਾ ਹੈ।

ਜੇ ਡੀਬੱਗ ਟਾਰਗੈਟ ਤੁਹਾਡੀ ਸਥਾਨਕ ਹੋਮ ਡਾਇਰੈਕਟਰੀ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੇ ਪਾਥ ਦੱਸੇ, ਤਾਂ ਲਾਂਚ ਕੌਂਫਿਗਰੇਸ਼ਨ ਅਜੇ ਵੀ ਸਥਾਨਕ ਸੋਚ ਰਹੀ ਹੈ।

ਨੈੱਟਵਰਕ ਨਿਰਭਰਤਾਵਾਂ ਹੋਸਟ ਕੋਲ ਹੀ ਰਹਿੰਦੀਆਂ ਹਨ

ਬਿਲਡ ਹੋਸਟ ਉੱਤੇ ਸ਼ੁਰੂ ਹੋਇਆ ਪੈਕੇਜ ਫੈਚ, git ਕਾਰਵਾਈ ਜਾਂ ਟੈਸਟ ਰਨ ਉਸ ਹੋਸਟ ਦਾ ਨੈੱਟਵਰਕ ਅਤੇ ਪ੍ਰਮਾਣ ਵਰਤਦਾ ਹੈ, ਤੁਹਾਡੇ ਲੈਪਟਾਪ ਦਾ VPN ਸੈਸ਼ਨ ਨਹੀਂ। ਲੈਪਟਾਪ ਕਿਸੇ ਨਿੱਜੀ ਪੈਕੇਜ ਮਿਰਰ ਤੱਕ ਪਹੁੰਚਦਾ ਹੈ ਇਸਦਾ ਇਹ ਅਰਥ ਨਹੀਂ ਕਿ ਸਰਵਰ ਵੀ ਪਹੁੰਚ ਸਕਦਾ ਹੈ। ਜੇ ਬਿਲਡ ਨੂੰ ਰਜਿਸਟਰੀ ਚਾਹੀਦੀ ਹੈ, ਸਰਵਰ ਨੂੰ ਉੱਥੇ ਤੱਕ ਰੂਟ ਚਾਹੀਦਾ ਹੈ, ਅਤੇ ਇਹ ਐਡੀਟਰ ਸੈਟਿੰਗ ਨਹੀਂ, ਫਾਇਰਵਾਲ ਦੀ ਗੱਲ ਹੈ।

ਉਲਟੀ ਦਿਸ਼ਾ ਵਿੱਚ ਵੀ ਇਹੀ ਟੈਸਟ ਐਪਲੀਕੇਸ਼ਨਾਂ ਉੱਤੇ ਲਾਗੂ ਹੁੰਦਾ ਹੈ। ਬ੍ਰਾਊਜ਼ਰ ਤੋਂ ਸਰਵਰ ਦੀ ਸੇਵਾ ਤੱਕ ਪਹੁੰਚਣਾ ਵੱਖਰਾ ਕਨੈਕਸ਼ਨ ਹੈ ਜਿਸਨੂੰ ਮਨਜ਼ੂਰ ਨਿੱਜੀ ਪਾਥ ਜਾਂ ਸੀਮਿਤ ਫਾਰਵਰਡ ਚਾਹੀਦਾ ਹੈ, ਖੁੱਲ੍ਹਾ ਲਿਸਨਰ ਨਹੀਂ।

ਕੰਮ ਗੁਆਏ ਬਿਨਾਂ ਡਿਸਕਨੈਕਟ ਕਰੋ

ਕਨੈਕਸ਼ਨ ਡਿੱਗਣ ਤੋਂ ਪਹਿਲਾਂ ਸੰਭਾਲੋ ਅਤੇ commit ਕਰੋ, ਜਾਂ ਘੱਟੋ-ਘੱਟ ਕੰਮਕਾਜੀ ਰੁੱਖ ਦਰਜ ਕਰੋ। ਦੂਰ ਦਾ ਐਡੀਟਿੰਗ ਸੈਸ਼ਨ ਵਾਅਦਾ ਨਹੀਂ ਕਰਦਾ ਕਿ ਚੱਲ ਰਿਹਾ ਬਿਲਡ ਜਾਂ ਅਣ-ਸੰਭਾਲਿਆ ਬਫਰ ਨੈੱਟਵਰਕ ਰੁਕਾਵਟ ਤੋਂ ਬਚੇਗਾ। ਜੋ ਕੁਝ ਤੁਹਾਡੇ ਸੈਸ਼ਨ ਤੋਂ ਵੱਧ ਚੱਲਣਾ ਚਾਹੀਦਾ ਹੈ ਉਸ ਲਈ ਪ੍ਰੋਜੈਕਟ ਦਾ ਸਮਰਥਿਤ ਜੌਬ ਜਾਂ ਸੈਸ਼ਨ ਵਰਕਫਲੋ ਵਰਤੋ।

ਤਦ ਕੰਮ ਦੀ ਵੰਡ ਸਪੱਸ਼ਟ ਹੈ: ਲੈਪਟਾਪ ਇੱਕ ਇੰਟਰਫੇਸ ਹੈ, ਸਰਵਰ ਵਰਕਸਪੇਸ ਅਤੇ ਟੂਲਚੇਨ ਦਾ ਮਾਲਕ ਹੈ, ਅਤੇ VPN ਰੂਟ ਦਿੰਦਾ ਹੈ। ਫਾਈਲਾਂ ਹਟਾਉਣਾ ਅਤੇ ਬਿਲਡ ਹਟਾਉਣਾ ਦੋ ਵੱਖਰੇ ਫ਼ੈਸਲੇ ਹਨ।

ਸੰਬੰਧਿਤ ਲੇਖ