{"id":231238,"date":"2022-12-15T14:59:00","date_gmt":"2022-12-15T11:59:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231238"},"modified":"2022-12-07T11:37:59","modified_gmt":"2022-12-07T08:37:59","slug":"saeveltaejae-ilman-jatkuvaa-integrointia","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fi\/saeveltaejae-ilman-jatkuvaa-integrointia\/","title":{"rendered":"S\u00e4velt\u00e4j\u00e4 ilman jatkuvaa integrointia"},"content":{"rendered":"\n<p>Jos olet WordPress-kehitt\u00e4j\u00e4, joka k\u00e4ytt\u00e4\u00e4 Composeria ilman jatkuvaa integrointia, sinun on todenn\u00e4k\u00f6isesti ratkaiseva vaihe selvitt\u00e4\u00e4, kuinka voit hallita toimittajahakemistoa, kun otat laajennuksia k\u00e4ytt\u00f6\u00f6n.<\/p>\n<p>Tuo on:<\/p>\n<ul>\n<li>Tied\u00e4mme, ett\u00e4 on huono idea heitt\u00e4\u00e4 koko toimittajahakemisto l\u00e4hdehallintaan,<\/li>\n<li>Muiden kehitt\u00e4jien, jotka tuntevat <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Composerin<\/a> k\u00e4yt\u00f6n, pit\u00e4isi pysty\u00e4 k\u00e4ynnistym\u00e4\u00e4n ilman paljon ohjeita,<\/li>\n<li>Jatkuvaa integrointia ei k\u00e4ytet\u00e4 useista syist\u00e4,<\/li>\n<li>Ja meid\u00e4n on toimitettava tuotantotason toimitus, joka k\u00e4ytt\u00e4\u00e4 tiettyj\u00e4 riippuvuuksia mutta ei muita.<\/li>\n<\/ul>\n<p>Vaikka yll\u00e4 olevat kohdat kuvaavatkin tilannettamme, se ei kerro meille, mit\u00e4 voimme tehd\u00e4 sille.<\/p>\n<p>Toisin sanoen t\u00e4ss\u00e4 on k\u00e4ytt\u00f6tapaus: Olet rakentanut WordPress-laajennuksen jollekin. T\u00e4m\u00e4 laajennus k\u00e4ytt\u00e4\u00e4 useita riippuvuuksia, jotka kaikki ovat Composerin yll\u00e4pit\u00e4mi\u00e4.<\/p>\n<p>Et tarkista toimittajahakemistoa arkistoon, mutta et my\u00f6sk\u00e4\u00e4n k\u00e4yt\u00e4 jatkuvaa integrointia laajennuksen k\u00e4ytt\u00f6\u00f6nottamiseksi. Sen sijaan asiakas on tai kolmas osapuoli on.<\/p>\n<p>Mit\u00e4 sitten?<\/p>\n<h2>Jakelu Composerin kanssa ilman jatkuvaa integrointia<\/h2>\n<p>Lyhyt versio on t\u00e4m\u00e4:<\/p>\n<p>Vie p\u00e4\u00e4haara (tai julkaisuhaara tai miksi tahansa kutsut sit\u00e4) laajennuksen paikallisesta kopiosta ja varmista sitten, ett\u00e4 suoritat Composer-komennon, joka kehottaa sit\u00e4 luomaan toimittajahakemiston ilman kehitystason riippuvuuksia.<\/p>\n<p>Sitten voit niputtaa luodun arkiston ja jakaa sen asiakkaallesi.<\/p>\n<h3>Mutta miten?<\/h3>\n<p>Ensinn\u00e4kin oletan, ett\u00e4 laajennuksen paikallisessa kopiossa ei ole kopiota toimittajahakemistosta, vaan kaikki uusin koodi on vedetty et\u00e4varastosta.<\/p>\n<p>Toisin sanoen sinulla on uusin, vakaa versio koodista valmiina julkaistavaksi, mutta et ole viel\u00e4 valmis tekem\u00e4\u00e4n niin, koska sill\u00e4 ei ole tarvittavia riippuvuuksia esimerkiksi automaattista lataamista ja muita vastaavia toimintoja varten.<\/p>\n<p>Ensimm\u00e4inen vaihe on paikallisen arkiston vieminen arkistoon. <a href=\"https:\/\/gist.github.com\/tommcfarlin\/2f47b8077d8bb58909d34a35baac786b#file-00-export-local-repository-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">N\u00e4in voit tehd\u00e4<\/a> sen pudottamalla sen ty\u00f6p\u00f6yd\u00e4llesi:<\/p>\n<pre><code>$ git archive -o ~\/Desktop\/plugin-name.zip HEAD<\/code><\/pre>\n<p>Pyyd\u00e4 seuraavaksi Composeria <a href=\"https:\/\/gist.github.com\/tommcfarlin\/2f47b8077d8bb58909d34a35baac786b#file-01-install-production-dependencies-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">asentamaan tiedostossasi ne riippuvuudet<\/a>, jotka eiv\u00e4t kuulu <strong>vaatima-dev-<\/strong> direktiiviin <code>composer.json<\/code>:<\/p>\n<pre><code>$ composer install --no-dev<\/code><\/pre>\n<p>Nyt voit arkistoida luodun hakemiston laajennukseen ja jakaa tiedoston.<\/p>\n<h2>Onko t\u00e4m\u00e4 ihanteellinen?<\/h2>\n<p>En sanoisi, ett\u00e4 t\u00e4m\u00e4 on ihanteellinen, mutta se on ratkaisu k\u00e4ytt\u00f6tapaukseen, joka varmasti on olemassa, joten sanoisin, ett\u00e4 se on jotain, joka voidaan tehd\u00e4 tietyn ongelman ratkaisemiseksi.<\/p>\n<p>Viime k\u00e4dess\u00e4, jos etsit tapaa levitt\u00e4\u00e4 Composeria k\u00e4ytt\u00e4v\u00e4\u00e4 WordPress-laajennusta ilman jatkuvaa integrointia, t\u00e4m\u00e4 on tapa tehd\u00e4 se.<\/p>\n<p>Ymm\u00e4rr\u00e4n kuitenkin, ett\u00e4 se on erityinen k\u00e4ytt\u00f6tapaus ja siksi sill\u00e4 on erityinen ratkaisu.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Viime k\u00e4dess\u00e4, jos etsit tapaa levitt\u00e4\u00e4 Composeria k\u00e4ytt\u00e4v\u00e4\u00e4 WordPress-laajennusta ilman jatkuvaa integrointia, t\u00e4m\u00e4 on tapa tehd\u00e4 se.<\/p>\n","protected":false},"author":1,"featured_media":235914,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[719,895,834,803,864],"tags":[1166],"class_list":["post-231238","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kehittaejae","category-koodi","category-opas-aloittelijoille","category-php-5","category-wordpress-5","tag-affiai-fi"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/231238","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/comments?post=231238"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/231238\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media\/235914"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media?parent=231238"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/categories?post=231238"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/tags?post=231238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}