Sări la conținut

Diff de fişier .env

Compară două fişiere .env şi listează variabilele care lipsesc sau diferă.

Intrare
Fişierul B (.env)
Ieșire

Diff de fişier .env

Lipiţi un fişier .env pe stânga şi al doilea pe dreapta, iar această unealtă vă spune exact cum diferă: ce variabile există doar în fişierul A, ce variabile există doar în fişierul B, şi care sunt prezente în amândouă dar cu valoare diferită. Este creată pentru momentul când sunteţi gata să faceţi deploy şi trebuie să ştiu ce s-a schimbat între .env.development şi .env.production, sau de ce configuraţia locală a unui coleg se comportă diferit de a voastră.

Deselectaţi "Compară valorile, nu doar numele" pentru a verifica doar prezenţa — util când vă interesează doar că fiecare cheie necesară există, nu valoarea acesteia. "Tratează valorile goale ca lipsite" face ca VAR= să fie tratat la fel ca o VAR lipsă, ceea ce corespunde cu modul în care funcţionează de fapt majoritatea uneltelor care citesc fişiere .env. "Ignoră variabilele care se potrivesc cu" acceptă modele separate prin virgulă cu wildcard, deci PRIVATE_* sau *_DEBUG pot fi excluse din comparaţie fără să editaţi niciun fişier. Selectaţi "Maschează valorile în rezultat" înainte de a lipi o captură de ecran sau de a partaja un rezultat — fiecare valoare este înlocuită cu un placeholder de lungime fixă, deci secretele nu apar niciodată în raport şi lungimea lor nu este dezvăluită.

Dincolo de un raport de diferenţe simplu, "Rezultat" poate genera un fişier .env fuzionat — fiecare cheie din ambele fişiere, cu valoarea din fişierul B câştigând în caz de conflict şi un comentariu notând valoarea originală din fişierul A — sau un template .env.example fără valori listând fiecare cheie găsită în oricare din fişiere, gata de predat unui nou colaborator. Raportul diff în sine poate fi redat ca o listă citibilă sau ca un tabel aliniat. Comentariile şi ordinea liniilor din fişierele de intrare nu afectează niciodată comparaţia, deoarece cheile sunt potrivite după nume, nu după poziţie.

Tot se execută local în browserul dumneavoastră — fişierele pe care le lipiţi, inclusiv orice secrete din ele, nu sunt trimise niciodată nicăieri. Copiaţi rezultatul, descărcaţi-l ca fişier .txt sau trimiteţi-l direct la intrare pentru a continua iterarea.

FAQ

Cum decide ce fişier "câştigă" când o valoare diferă?
În raportul de diferenţe nici un fişier nu câştigă — ambele valori sunt afişate pe lângă altul. Când se generează un fişier fuzionat, valoarea din fişierul B este păstrată şi un comentariu deasupra înregistrează ce avea fişierul A.
Ordinea variabilelor sau prezenţa comentariilor importă?
Nu. Variabilele sunt potrivite după nume, deci reordonarea liniilor sau adăugarea comentariilor în oricare fişier nu are niciun efect asupra rezultatului.
Ce se consideră un nume de variabilă valid?
Un nume de stil shell standard: litere, cifre şi subliniări, nu începând cu o cifră. Liniile care nu se potrivesc cu acea formă, împreună cu liniile goale şi comentariile, sunt omise.
Ce suportă modelul de ignorare?
Modele separate prin virgulă unde * se potriveşte cu orice secvenţă de caractere, de exemplu TEST_* sau *_DEBUG. Orice nume de variabilă care se potrivește cu unul din modele este exclus din comparaţie şi din rezultatul generat.
Fişierele .env pe care le lipiţi sunt vreodată trimise?
Nu. Comparaţia se întâmplă în întregime în browserul dumneavoastră folosind JavaScript — nimic din ceea ce lipiţi, inclusiv secretele, nu pleacă de pe dispozitivul dumneavoastră.