dmosk / envdiff

ਕੁੰਜੀਆਂ ਨਾਲ .env, JSON, TOML ਅਤੇ ini ਦੀ ਤੁਲਨਾ

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

ਦੋਵੇਂ ਪਾਸੇ ਇੱਕੋ ਫਾਰਮੈਟ ਲਾਗੂ ਹੁੰਦਾ ਹੈ। ਸਾਂਝਾ ਲਿੰਕ ਦੋਵੇਂ ਟੈਕਸਟ URL ਦੇ # ਹਿੱਸੇ ਵਿੱਚ ਰੱਖਦਾ ਹੈ — ਸਰਵਰ ਨੂੰ ਨਹੀਂ ਭੇਜਿਆ ਜਾਂਦਾ, ਪਰ ਅਸਲ ਗੁਪਤ ਜਾਣਕਾਰੀ ਹੋਵੇ ਤਾਂ ਲਿੰਕ ਸਾਂਝਾ ਨਾ ਕਰੋ।

ਖੱਬਾ

ਸੱਜਾ

envdiff ਕਿਉਂ

  • ਤਰਕਸੰਗਤ ਤੁਲਨਾ। ਲਾਈਨਾਂ ਨਹੀਂ, ਕੁੰਜੀਆਂ ਅਤੇ ਮੁੱਲ ਤੁਲਨਾਏ ਜਾਂਦੇ ਹਨ — ਕ੍ਰਮ, ਟਿੱਪਣੀਆਂ ਤੇ ਖਾਲੀ ਲਾਈਨਾਂ ਦਾ ਅਸਰ ਨਹੀਂ।
  • ਚਾਰ ਫਾਰਮੈਟ। .env, JSON, TOML ਅਤੇ ini; JSON/TOML ਦੀਆਂ ਨੇਸਟਡ ਕੁੰਜੀਆਂ db.host ਵਰਗੇ ਪਾਥ ਬਣ ਜਾਂਦੀਆਂ ਹਨ।
  • ਗੁਪਤ ਮੁੱਲ ਲੁਕਾਉਣਾ। ਚਾਹੋ ਤਾਂ password, token, secret, key ਵਰਗੀਆਂ ਕੁੰਜੀਆਂ ਦੇ ਮੁੱਲ [REDACTED] ਵਜੋਂ ਦਿਸਦੇ ਹਨ।
  • ਸਿਰਫ਼ ਬ੍ਰਾਊਜ਼ਰ। API ਨਹੀਂ: ਫ਼ਾਈਲਾਂ ਤੁਹਾਡੇ ਡਿਵਾਈਸ ਤੋਂ ਬਾਹਰ ਨਹੀਂ ਜਾਂਦੀਆਂ। ਸਥਿਤੀ URL ਦੇ ਫ਼ਰੈਗਮੈਂਟ ਰਾਹੀਂ ਸਾਂਝੀ ਹੁੰਦੀ ਹੈ।

ਸੰਰਚਨਾਵਾਂ ਦੀ ਤੁਲਨਾ ਕਿਵੇਂ ਕਰੀਏ

  1. ਫਾਰਮੈਟ ਚੁਣੋ — ਇਹ ਦੋਵੇਂ ਪਾਸੇ ਲਾਗੂ ਹੁੰਦਾ ਹੈ।
  2. ਹਰ ਪੈਨਲ ਵਿੱਚ ਟੈਕਸਟ ਪੇਸਟ ਕਰੋ ਜਾਂ ਫ਼ਾਈਲ ਅੱਪਲੋਡ ਕਰੋ; ਦੋਵੇਂ ਜ਼ਰੂਰੀ ਹਨ।
  3. “ਤੁਲਨਾ ਕਰੋ” ਦਬਾਓ ਅਤੇ ਸਿਰਫ਼ ਖੱਬੇ, ਸਿਰਫ਼ ਸੱਜੇ ਅਤੇ ਬਦਲੇ ਮੁੱਲਾਂ ਵਾਲੀਆਂ ਕੁੰਜੀਆਂ ਵੇਖੋ।
  4. ਲੋੜ ਹੋਵੇ ਤਾਂ ਮਾਸਕਿੰਗ ਚਾਲੂ ਕਰੋ ਅਤੇ ਸਥਿਤੀ ਵਾਲਾ ਲਿੰਕ ਕਾਪੀ ਕਰਨ ਲਈ “ਸਾਂਝਾ ਕਰੋ” ਦਬਾਓ।

ਕੁੰਜੀਆਂ, ਫਾਰਮੈਟ ਅਤੇ ਗੁਪਤ ਮੁੱਲ

envdiff ਲਾਈਨਾਂ ਨਹੀਂ, ਕੁੰਜੀਆਂ ਦੀ ਤੁਲਨਾ ਕਰਦਾ ਹੈ। ਫਾਰਮੈਟ ਕਦੇ ਮਿਲਾਏ ਨਹੀਂ ਜਾਂਦੇ: ਨੇਸਟਡ JSON ਅਤੇ TOML ਬਿੰਦੀ ਵਾਲੇ ਪਾਥ ਵਿੱਚ ਬਦਲਦੇ ਹਨ, ini ਦੇ ਸੈਕਸ਼ਨ section.key ਬਣਦੇ ਹਨ ਅਤੇ .env ਨੂੰ KEY=VALUE ਵਜੋਂ ਪੜ੍ਹਿਆ ਜਾਂਦਾ ਹੈ।

ਸੁਝਾਅ:

  • ਟਿੱਪਣੀਆਂ, ਖਾਲੀ ਲਾਈਨਾਂ ਅਤੇ ਕੁੰਜੀਆਂ ਦਾ ਕ੍ਰਮ ਅਣਡਿੱਠੇ ਕੀਤੇ ਜਾਂਦੇ ਹਨ।
  • ਐਰੇ ਇੰਡੈਕਸ ਨਾਲ ਖੁੱਲ੍ਹਦੇ ਹਨ, ਜਿਵੇਂ servers[0].host।
  • ਮੁੱਲ ਟੈਕਸਟ ਵਜੋਂ ਤੁਲਨਾਏ ਜਾਂਦੇ ਹਨ: JSON ਦਾ ਅੰਕ 5432 ਅਤੇ .env ਦਾ 5432 ਬਰਾਬਰ ਹਨ।
  • ਮਾਸਕਿੰਗ ਸਿਰਫ਼ ਦਿੱਖ ਬਦਲਦੀ ਹੈ: password, token, secret, key ਵਰਗੀਆਂ ਕੁੰਜੀਆਂ [REDACTED] ਦਿਖਾਉਂਦੀਆਂ ਹਨ।
  • YAML ਲਈ yamaster, ਲੀਕ ਹੋਏ ਗੁਪਤ ਮੁੱਲ ਲੱਭਣ ਲਈ secret-scanner ਵਰਤੋ।

ਇਹ ਕਿਸ ਕੰਮ ਆਉਂਦਾ ਹੈ

  • dev, staging ਅਤੇ production ਵਿਚਕਾਰ .env ਦੀ ਤੁਲਨਾ;
  • ਡਿਪਲੌਇ ਤੋਂ ਪਹਿਲਾਂ ਅਤੇ ਬਾਅਦ ਸੰਰਚਨਾ ਦੀ ਜਾਂਚ;
  • ਕਿਸੇ ਇੱਕ ਵਾਤਾਵਰਨ ਵਿੱਚ ਗਾਇਬ ਕੁੰਜੀਆਂ ਲੱਭਣਾ;
  • ਸ਼ੋਰ ਵਾਲੇ ਟੈਕਸਟ diff ਤੋਂ ਬਿਨਾਂ JSON, TOML ਜਾਂ ini ਦੇ ਬਦਲਾਅ ਵੇਖਣਾ;
  • ਲਿੰਕ ਰਾਹੀਂ ਤੁਲਨਾ ਸਾਂਝੀ ਕਰਨਾ (ਅਸਲ ਗੁਪਤ ਮੁੱਲਾਂ ਤੋਂ ਬਿਨਾਂ)।

ਅਕਸਰ ਪੁੱਛੇ ਜਾਂਦੇ ਸਵਾਲ

ਕੀ ਵੱਖ-ਵੱਖ ਫਾਰਮੈਟਾਂ ਦੀ ਤੁਲਨਾ ਹੋ ਸਕਦੀ ਹੈ?

ਨਹੀਂ। ਦੋਵੇਂ ਪਾਸਿਆਂ ਲਈ ਇੱਕੋ ਫਾਰਮੈਟ ਚੁਣਿਆ ਜਾਂਦਾ ਹੈ; ਫਾਰਮੈਟ ਮਿਲਾਉਣਾ ਸਮਰਥਿਤ ਨਹੀਂ।

ਕੀ ਟਿੱਪਣੀਆਂ ਅਤੇ ਕ੍ਰਮ ਮਾਇਨੇ ਰੱਖਦੇ ਹਨ?

ਨਹੀਂ। ਸਿਰਫ਼ ਕੁੰਜੀਆਂ ਅਤੇ ਮੁੱਲ ਤੁਲਨਾਏ ਜਾਂਦੇ ਹਨ।

ਕੀ ਮੇਰਾ ਡੇਟਾ ਅੱਪਲੋਡ ਹੁੰਦਾ ਹੈ?

ਨਹੀਂ। ਪਾਰਸਿੰਗ ਅਤੇ ਤੁਲਨਾ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਹੁੰਦੀ ਹੈ; API ਨਹੀਂ ਹੈ।

ਮਾਸਕਿੰਗ ਕੀ ਕਰਦੀ ਹੈ?

password, secret, token, key ਵਰਗੀਆਂ ਕੁੰਜੀਆਂ ਦੇ ਮੁੱਲ [REDACTED] ਦਿਖਦੇ ਹਨ; ਤੁਲਨਾ ਅਸਲ ਮੁੱਲਾਂ ਨਾਲ ਹੁੰਦੀ ਹੈ।

ਨੇਸਟਡ ਕੁੰਜੀਆਂ ਕਿਵੇਂ ਦਿਖਦੀਆਂ ਹਨ?

ਆਬਜੈਕਟ ਤੇ ਟੇਬਲ ਲਈ ਬਿੰਦੀ ਅਤੇ ਐਰੇ ਲਈ ਇੰਡੈਕਸ, ਜਿਵੇਂ db.host ਜਾਂ servers[0]।