Pāriet uz saturu

Git

Rudel izmanto PHP vietējās Git darbības ar Pitmaster starpniecību. Tam nav vajadzīgs resursdatora git izpildfails. Attālie repozitoriji tiek sasniegti, izmantojot HTTP(S) vai SSH.

Katrai smilškastei ir viens zara nosaukums — rudel/{sandbox-id}, ko izmanto visās tālāk aprakstītajās Git darbplūsmās.

Attālā repozitorija klonēšana jaunā smilškastē

Apvalks
wp rudel create --name=feature-x --git=https://example.test/my-theme.git

Rudel izveido smilškasti, klonē attālo repozitoriju uz themes/my-theme smilškastes direktorijā (direktorija nosaukums ir repozitorija nosaukums), izveido zaru rudel/{id} no noklusējuma zara un pārslēdzas uz to. Izmantojot --type=plugin, izraksts tiek ievietots plugins/my-theme. Attālais repozitorijs, direktorija un bāzes zars tiek saglabāti smilškastē vēlākai nosūtīšanai. Ja klonēšana neizdodas, smilškaste tiek paturēta, un komanda parāda brīdinājumu.

Izraksts ir darba kopija priekš wp rudel push. Pašreizējā laidienā smilškaste to nenodrošina (11. problēma):

  • Smilškaste piedāvā tēmu, kas izvēlēta ar --theme, vai resursdatora aktīvo tēmu, kas tiek nokopēta no resursdatora, kad tiek izveidota smilškaste. --theme jānorāda tēma, kas instalēta resursdatorā, tāpēc tiek piedāvāta tikai tā izrakstītā koda versija, kuras repozitorija nosaukums atbilst šim slug, un klons pēc tam raksta nokopētajā tēmas direktorijā.
  • Spraudņi vienmēr tiek ielādēti no resursdatora spraudņu direktorija, tāpēc --type=plugin izrakstītā koda versija netiek palaista.

Saistītie darba koki

Kad klonējat smilškasti, kuras tēmas direktorijs ir Git repozitorijs, Rudel izveido saistītu darba koku jaunajai smilškastei, nevis kopē failus:

Apvalks
wp rudel create --name=feature-y --clone-from=feature-x-3be7

Darba koks atrodas zarā rudel/{new-id}. Rudel to reģistrē jaunās smilškastes metadatos ar skaidri norādītu darba koka nosaukumu, kas veidots no smilškastes ID, satura tipa un tēmas slug, lai divas smilškastes, kurās tiek izmantots viens un tas pats tēmas slug, nesadurtos. Iznīcinot smilškasti, darba koks tiek noņemts un zars dzēsts.

wp rudel cleanup --merged ņem vērā tikai šos saistītos darba kokus. Skatiet Tīrīšana.

Izmaiņu iesūtīšana

Apvalks
wp rudel push feature-x-3be7 --message="Update checkout template"

push apstiprina visas izmaiņas izrakstītajā koda versijā un iesūta zaru rudel/{id} uz origin. Ja nekas nav mainījies, tā atgriež No changes to push..

  • --git=<remote> iestata attālo repozitoriju, ja tas nav saglabāts; pēc pirmās veiksmīgās iesūtīšanas tas tiek atcerēts.
  • --dir=<dir> atlasa direktoriju attiecībā pret smilškastes direktoriju, piemēram, themes/my-theme. Pēc noklusējuma tā ir direktorija, ko saglabājis --git, vai arī visa smilškastes direktorija.
  • --message pēc noklusējuma ir Update from Rudel sandbox.

No PHP Rudel::push( $id, $remote_url, $message, $subdir ) dara to pašu un izsauc rudel_*_environment_push āķus.

Apstiprinājuma identitāte

Ja izrakstītajā koda versijā tās Git konfigurācijā nav user.name vai user.email, Rudel ieraksta Rudel un rudel@localhost. Lai izmantotu citas vērtības, definējiet RUDEL_GIT_AUTHOR_NAME un RUDEL_GIT_AUTHOR_EMAIL failā wp-config.php.