· hutor.tech
Kako preuzeti tuđi projekt u Laravelu
Preuzeti tuđu aplikaciju u Laravelu uglavnom je vježba iz smanjivanja neizvjesnosti. Kod je poznata veličina — može se pročitati. Ono što se ne da pročitati jesu objava na server, cron zadaci, workeri redova i tri varijable okoline za koje je znao samo prethodni programer. Naše preuzimanje počinje ondje, a ne u uređivaču.
Tražite pristupe prije svega ostalog. Primopredaja je gotova kad u rukama imate repozitorij, server (SSH i upravljačku ploču), bazu, DNS i registrara domene, račune poštanskog i platnog pružatelja te ključeve vanjskih API-ja. Manjak pristupa najčešći je razlog zbog kojeg preuzimanje zapne na tjedne, a prikupiti ih je mnogo lakše dok prethodni tim još odgovara na poruke.
Pokrenite projekt lokalno prvog dana. Klon, `composer install`, kopija `.env`, generiranje ključa, uvoz dumpa baze, migracije. Svaki korak koji padne je nalaz: nedokumentirano PHP proširenje, paket iz privatnog repozitorija, migracija koja nikad nije izvedena po redu. Bilježite te padove usput — taj je popis prvi iskren opis stanja projekta.
Zatim čitajte najdosadnije datoteke:
— `composer.json` i `composer.lock`: verzija frameworka, napušteni paketi, koliko zaostajete za izdanjem;
— `.env.example` naspram produkcijskog `.env`: koji su ključevi stvarni, a koji ukrasni;
— `routes/` i middleware: stvarna površina aplikacije;
— mapa migracija: je li shema uopće opisana migracijama ili živi samo u bazi.
Provjerite ono što radi izvan ciklusa zahtjeva. Zakazane naredbe u `routes/console.php`, workere redova, konfiguracije supervisora, skripte za sigurnosne kopije, webhookove platnih sustava. Upravo tu naslijeđene aplikacije skrivaju iznenađenja i upravo tu tiha greška može ostati neprimijećena mjesecima.
Ne refaktorirajte prvi tjedan. Popravite objavu, podignite testnu kopiju, uključite prikupljanje grešaka i sigurnosnu kopiju koju ste barem jednom vratili. Tek onda dirajte kod, malim commitovima, s testom oko svega što mijenjate. Povjerenje klijenta grade ispravna objava i predvidljiva izdanja, a ne pisanje ispočetka.
Preuzimanje zaključite pisanom kartom: kako se objavljuje, gdje su logovi, što radi cron, koji su dijelovi koda krhki i čega se prvo primiti. Ako prethodni tim takav dokument nije ostavio — a obično nije — upravo ste napravili ono što će sljedeću primopredaju učiniti jeftinom.