Tämä ohje opastaa, kuinka julkaiset muutokset lokaalilta koneeltasi Seravon tuotantopalvelimelle käyttämällä Gitiä.
Esivaatimukset
SSH-yhteyden on oltava kunnossa: Varmista, että SSH-avaimesi on määritetty.
Sivustosta on oltava lokaali Git-kopio: Tarvitset lokaalin kopion sivustostasi.
Projektihakemisto: Siirry projektisi kansioon lokaalilla koneellasi.
Muutosten julkaiseminen
Tässä esimerkissä etärepona (git remote) on käytetty nimeä production:
# Here we are using custom alias 'your-site' in ~/.ssh/config
git remote -v
production your-site:/data/wordpress/.git (fetch)
production your-site:/data/wordpress/.git (push)
# This is the output if project was cloned without ssh alias
git remote -v
production ssh://[email protected]:12345/data/wordpress (fetch)
production ssh://[email protected]:12345/data/wordpress (push)
Julkaise muutokset ajamalla komento:
git push production master
Mitä julkaisun aikana tapahtuu?
Oletusarvoisesti Git siirtää vain muuttuneet tiedostot. Jotta sivustosi toimisi oikein päivityksen jälkeen, suosittelemme käyttämään post-receive-hookia automatisoimaan välttämättömät tehtävät.
Suositeltavat tehtävät julkaisun jälkeen:
Välimuistien tyhjennys: Tyhjennä WordPressin objektivälimuisti ja Nginxin sivuvälimuisti, jotta muutokset näkyvät heti.
Koodin rakentaminen (Build): Aja työkalut kuten Gulp tai SASS, jos projektisi vaatii koodin kääntämistä.
Riippuvuuksien hallinta: Aja
composer install, jos hallinnoit lisäosia tai teemoja Composerin avulla.
Git-hookien käyttäminen
Voit luoda palvelimelle tiedoston /data/wordpress/.git/hooks/post-receive. Tämä skripti suoritetaan jokaisen git push -komennon jälkeen.
Esimerkki post-receive-skriptistä:
#!/bin/bash
echo "Seravo: Running post-receive tasks..."
# Flush caches
wp cache flush --path=/data/wordpress/htdocs wp-purge-cache
# Run Gulp if applicable if [ -f "/data/wordpress/htdocs/gulpfile.js" ]; then
cd /data/wordpress/htdocs && gulp build
fi
Huom: Anna tiedostolle suoritusoikeudet komennolla: chmod +x /data/wordpress/.git/hooks/post-receive
Tärkeää: Tietokanta ja mediatiedostot
Git-julkaisu ei sisällä oletuksena tietokantaa tai uploads-hakemiston sisältöä.
Suositus: Tietokannan tai mediatiedostojen sisällyttämistä Git-arkistoon ei missään nimessä ole suositeltavaa. Se tekee arkistosta tarpeettoman raskaan ja vaikeasti hallittavan.
Datan siirto: Jos sinun täytyy siirtää tietokannan sisältöä tai mediatiedostoja, käytä erillisiä työkaluja (kuten
wp-clitai SSH-pohjaiset siirrot).Tietoturva: Vaikka näiden tiedostojen sisällyttäminen Gitiin on teknisesti mahdollista, se on riskialtista. Varmista aina, ettei siirtomenetelmäsi ylikirjoita tuotantoympäristössä olevaa elävää dataa, kuten uusia artikkeleita tai asiakastilauksia.
Tutorial: Ensimmäinen julkaisu
Määritä etärepo: Lisää Seravon tuotantopalvelin etärepoksi lokaalissa projektissasi.
git remote add production ssh://[email protected]:12345/data/wordpress
Push tuotantoon:
git push production master
