Udhibiti wa chanzo

Sambaza kutoka kwa hazina unayotumia tayari — maeneo tisa ya kuiweka

Unganisha akaunti ya GitHub au GitLab unayofanyia kazi na upeleke moja kwa moja kutoka kwenye tawi: hadi Cloudflare Pages, GitHub Pages, GitLab Pages, Netlify, Vercel, Render, Azure Static Web Apps au AWS Amplify — au kwenye seva yetu dhibitiwa ya mwenyeji, ambapo hifadhi na faili za tovuti hubaki katika ulandanishi pande zote mbili. Kila muunganisho huonyesha ruhusa unazohitaji, hukaguliwa dhidi ya API ya mtoa huduma kabla ya kuhifadhiwa, na huwekwa kwenye Vault. Unaweza pia kuingia ukitumia GitHub au GitLab.

Commit inayopita kwenye bomba kutoka kwenye hifadhi hadi tovuti inayofanya kazi.
  • GitHub + GitLabUnganisha akaunti uliyo nayo tayari
  • Vituo tisaseva nane za ukingoni, pamoja na kundi letu wenyewe
  • Usawazishaji wa njia mbilikila tovuti, kila mstari
  • Imehifadhiwa kwenye Vaultimethibitishwa wakati wa kuingiza, haipo kamwe kwenye kumbukumbu
  • Tokeni imekaguliwa kabla ya kuhifadhiwaishara yenye wigo mpana kupita kiasi haitui kamwe
  • Sukuma ili kusambazasahihi imethibitishwa na ya hiari
  • Tawi lako, ujenzi wakochapisha saraka au endesha CI yako mwenyewe
  • Tenganisha vizuritunaondoa kabisa hook tuliyotengeneza

Unganisha mara moja, na uone kile unachokubali

Muunganisho ni kitambulisho unachompa mtu mwingine. Wetu unaeleza kile unachohitaji kabla ya kuutengeneza, unathibitisha kuwa unafanya kazi kabla ya kuuhifadhi, na unaweza kubatilishwa kutoka pande zote mbili.

Haki maalum, zilizoelezwa wazi tangu mwanzo

Kabla ya kuunda tokeni tunakuambia kile inachopaswa kuwa na uwezo wa kufanya na kwa nini. Hakuna upeo wa jumla kwa sababu ilikuwa rahisi kuuomba, na hakuna kugundua baada ya ukweli kwamba tulitaka zaidi ya kile kazi ilihitaji.

Imethibitishwa na mtoa huduma, haijakubaliwa kwa kuamini tu

Tunaita API ya mtoa huduma yenyewe kwa tokeni yako kabla ya kuihifadhi. Tokeni isiyo sahihi, iliyoisha muda wake au yenye upeo usio sahihi hukataliwa kwenye fomu badala ya kukubaliwa, kuonyeshwa kuwa inafanya kazi vizuri, kisha kufeli kwenye utumaji wa kwanza halisi.

Imehifadhiwa ndani ya Vault, na si mahali pengine popote

Sio katika msimbo wetu, sio kwenye faili ya mazingira, sio kwenye kumbukumbu na sio kwenye safu ya amri. Hutatuliwa mara tu inapotumiwa, na mzigo wa kazi unaoitumia.

Zaidi ya akaunti moja, iliyochaguliwa kwa kila tovuti

Unganisha akaunti ya kibinafsi na ya shirika, au za mashirika mawili. Kila tovuti huchagua ile inayosambaza kutoka kwayo, kwa hivyo hazina ya mteja na yako haziwahi kushiriki kitambulisho kamwe.

Maeneo tisa ambapo hazina inaweza kutua

Wakaribishaji nane wa ukingoni wanaosimamiwa na kundi letu wenyewe. Mahali pa kuelekea ni sifa ya tovuti, si ya muunganisho, kwa hivyo hifadhi ile ile inaweza kuchapisha tawi moja kwa mkaribishaji wa Pages na tovuti nyingine inaweza kuendeshwa kwenye maunzi yetu.

Cloudflare Pages

Bandwidth isiyo na kikomo, matumizi ya kibiashara yanaruhusiwa, na vikoa vya kilele (apex domains) vinashughulikiwa kwenye mtoa huduma yule yule ambaye kwa kawaida hushikilia eneo lako la DNS. Ndio chaguo la kwanza tunalolifikia, kwa sababu hizo.

Uhosti wa Cloudflare Pages →

GitHub Pages

Chapisha moja kwa moja kutoka kwenye hazina ambayo msimbo tayari umo. Imewekewa alama kwenye mstari wa Footprint-Free, kwa sababu miundombinu ya pamoja ya github.io yenyewe ni alama.

Ukaribishaji wa GitHub Pages →

GitLab Pages, Netlify, Vercel na vinginevyo

GitLab Pages, Netlify, Vercel, Render, Azure Static Web Apps na AWS Amplify zote ni sehemu unazoweza kuelekeza tovuti, ukiwa na muunganisho uleule na historia ileile ya utumaji.

Ukaribishaji wa tovuti tuli →

Upangishaji wetu wenyewe unaosimamiwa

Programu kamili badala ya kifurushi kilichojengwa — WordPress, PHP, Node. Hili ndilo lengo linalopokea ulandanishi wa pande mbili, ili faili zilizo kwenye boksi na tawi zibaki sambamba.

Upangishaji unaosimamiwa →

Tovuti zilizo kwenye ukingo wa mtu mwingine

Tovuti iliyochapishwa kwa mpangishi ambaye hatummiliki bado hutumia mgawo na bado huonekana kwenye dashibodi yako pamoja na machapisho yake, muda wake wa kufanya kazi na data yake ya SEO kando ya kila kitu kingine unachoendesha.

Viwango vya tovuti za nje →

Au ihariri hapa

Kihariri cha ndani ya kivinjari hufanya kazi kwenye faili zilezile ambazo usawazishaji wa pande mbili huzirejesha, kwa hivyo marekebisho ya haraka kutoka kwenye dashibodi huwa komiti kwenye tawi lako badala ya mabadiliko ambayo hakuna mtu anayeweza kuyapata baadaye.

Kihariri cha wavuti →

Usawazishaji wa njia mbili

Hifadhi yako na tovuti yako ya moja kwa moja, zikiwa sambamba

Iwashe na faili za tovuti yenyewe zitakabidhiwa (committed) kwenye branch yako, huku commits za branch hiyo zikirejeshwa kwenye tovuti. Inafanya kazi kwenye kila tovuti tunayopangisha (host), kwenye kila laini — hitaji pekee ni kwamba mashine iliyo chini iweze kuendesha Git dhidi ya faili zake, jambo ambalo huulizwa seva badala ya kudhaniwa kutoka kwenye mpango.

Unachagua saraka inayolinganishwa, kwa sababu mteja wa WordPress anataka mandhari yake ifuatiliwe na si faili elfu arobaini za msingi. Na imezimwa hadi utakapoiwasha: kuwezesha usawazishaji ni uamuzi kuhusu hazina ya mtu mwingine, na uhamiaji haupaswi kamwe kufanya uamuzi huo kwa niaba yako.

  • Marekebisho kwenye maunzi yetu huwa commits kwenye tawi lako
  • Ahadi (commits) kwenye tawi lako zinarudi kwenye tovuti
  • Sawazisha saraka moja — mandhari, programu-jalizi — si mzizi mzima wa hati
  • Imezimwa kwa chaguo-msingi, ikijumuisha kwenye kila tovuti ambayo tayari ipo
Faili lililofunguliwa kwenye kihariri huku faili hilo hilo likionyeshwa kama commit kwenye hazina.

Chapisha saraka, au ruhusu CI yako yenyewe kuijenga

Hali mbili, na tofauti ni mahali ambapo mchakato wa ujenzi unaendeshwa. Zote huishia mahali pamoja: ref tunayoileta na kuichapisha, huku commit ikiwa imerekodiwa dhidi ya usambazaji.

  • Hali ya kuchapisha inachukua tawi lako jinsi lilivyo na kuchapisha saraka unayotaja — nafasi wazi inamaanisha mzizi wa hazina.
  • Hali ya CI huendesha amri yako ya ujenzi katika bomba la mtoa huduma wako na hufanya matokeo kwenye tawi tofauti la kuchapisha, ambalo tunaleta kama rejeleo lingine lolote.
  • Tawi ambalo upelekaji huchapisha kutoka kwake daima hutajwa waziwazi, kamwe si "tawi chaguomsingi" — chaguomsingi linaweza kubadilika bila kutarajia, na historia ambayo haiwezi kueleza ni tawi lipi ililochapisha si historia.
  • Usambazaji wa kiotomatiki umewashwa kwa chaguo-msingi na unaweza kuzimwa bila kuondoa webhook, ili uweze kuona uwasilishaji ukifika kabla ya kuuruhusu utende kazi.
  • Kila upelekaji hurekodi commit yake, matokeo yake na muda wake, na huendeshwa chinichini — ukurasa husasishwa uundaji unapokamilika.
  • Kutenganisha huondoa tu webhook tuliyounda, kwa kutumia id yake, na hakuna kitu kingine chochote kwenye hazina yako.

Kutoka kwa hazina hadi tovuti inayofanya kazi

  1. Unganisha akaunti

    GitHub au GitLab, chini ya Miunganisho. Haki zimeorodheshwa kabla ya kuunda tokeni na inakaguliwa dhidi ya mtoa huduma kabla ya kuhifadhiwa.

  2. Elekeza tovuti kwenye hazina

    Mmiliki, hazina, tawi, na iwapo tutachapisha saraka au kuleta kile ambacho CI yako iliunda. Tunasajili webhook ya kusukuma kama sehemu yake.

  3. Sukuma, au bonyeza kitufe

    Kusukuma (push) kwenye tawi lililoteuliwa kunaanzisha usambazaji, au unaweza kusambaza kulingana na mahitaji kutoka kwenye kichupo cha Usambazaji cha tovuti. Miundo inaendeshwa chinichini.

  4. Itazame, na uisawazishe tena ukipenda

    Historia ya usambazaji inaonyesha kilichochapishwa na wakati kilipochapishwa. Washa ulandanishi wa pande mbili na mabadiliko unayofanya hapa yatarudi kama commits kwenye tawi lako.

Wakati kitu kinapoenda vibaya

"Imeunganishwa lakini haijawahi kuwasilishwa" ni hali ambayo hakika tutakujulisha kuihusu

Muunganisho wa hazina ambao unaonekana kuwa mzuri lakini haupokei chochote ni hitilafu ya kawaida isiyo na taarifa — tokeni yenye upeo usio sahihi, uwasilishaji uliozuiwa kwa mtoa huduma, au ndoano ambayo mtu ameiondoa wenyewe. Haionekani kwenye skrini nyingine yoyote, kwa hivyo kadi ya hazina huibeba moja kwa moja: wakati mtoa huduma alipotuletea mara ya mwisho, na kile alichosema.

Uwasilishaji hukaguliwa saini kabla hatujachukua hatua juu yake, kwa mpango wa kila mtoa huduma mwenyewe badala ya ule tuliotarajia ungetumika kwa wote. Uwasilishaji ambao hauthibitishwi hukataliwa na kurekodiwa, na wala haupuuzwi kimyakimya.

  • Wakati na ujumbe wa uwasilishaji wa mwisho, kwenye kadi
  • "Haijawahi kuwasilishwa" imeelezwa, haijaachwa wazi
  • Sahihi imethibitishwa kwa kila mtoa huduma kabla ya kitu chochote kuendeshwa
  • H ndoano tuliyounda huondolewa kwa kitambulisho unapokata muunganisho
Uwasilishaji wa webhook ukiwasili na kuangaliwa kabla ya kuchochea chochote.

Utambulisho

Ingia ukitumia GitHub au GitLab — au Google, au Microsoft

Pamoja na anwani ya barua pepe na nenosiri, unaweza kuingia kwenye akaunti yako ya Zinn Digital® ukitumia GitHub, GitLab, Google au Microsoft. Safu ya utambulisho huendesha makubaliano ya mawasiliano (handshake); hatuoni kamwe nenosiri la mtoa huduma wako, na kuunganisha akaunti ya mtandao wa kijamii kwenye akaunti iliyopo ya Zinn® bado kunahitaji kuthibitishwa kwa barua pepe.

Kuingia kupitia GitHub na kuunganisha GitHub kwa ajili ya usambazaji ni maamuzi tofauti na kitambulisho tofauti. Kufanya moja hakufanyi lingine, na kuondoa moja hakuondoi lingine.

  • Kuingia kupitia GitHub, GitLab, Google na Microsoft
  • Vifunguo vya ufikiaji na uthibitishaji wa vipengele viwili kwenye akaunti moja
  • Vitambulisho vya kuingia na kupeleka vinasalia tofauti
Ufikiaji uliokabidhiwa kwa timu yako
Watu kadhaa wanaoingia kwenye akaunti moja kwa kutumia watoa huduma tofauti.

Maswali Yanayoulizwa Mara kwa Mara

Ni watoa huduma gani wa udhibiti wa chanzo ninayoweza kuwaunganisha?

GitHub na GitLab. Unganisha akaunti unayofanyia kazi tayari na tunaweza kusambaza kutoka kwenye hazina zake, kusajili webhook ya kusukuma juu yake, na — ukitaka — kusawazisha faili za tovuti yako kurudi upande mwingine. Zote zinapitia njia ile ile ya akaunti iliyounganishwa, kwa hivyo kila kitu hapa chini ni kweli kwa mojawapo.

Je, ninaweza kuingia kwa kutumia GitHub au GitLab?

Ndiyo, na pia kupitia Google au Microsoft. Kando na anwani ya barua pepe na nenosiri, unaweza kuingia kwenye akaunti yako ya Zinn Digital® kwa mojawapo ya njia hizi nne. Safu ya utambulisho hushughulikia uthibitishaji na hatuoni nenosiri la mtoa huduma wako kamwe. Kuingia kupitia GitHub ni tofauti na kuunganisha GitHub kwa ajili ya usambazaji (deploys) — unaweza kufanya mojawapo, yote mawili, au usifanye lolote.

Ninaweza wapi kupeleka hazina?

Hadi Cloudflare Pages, GitHub Pages, GitLab Pages, Netlify, Vercel, Render, Azure Static Web Apps au AWS Amplify kwa ajili ya tovuti tuli au iliyojengwa — au kwenye mwenyeji wetu wenyewe anayesimamiwa, ambapo hazina na faili za tovuti hubaki katika ulandanishi pande zote mbili. Unachagua mahali pa tovuti; muunganisho wa hazina ni ule ule kwa njia yoyote ile.

Je, mnaweza kunitengenezea tovuti yangu, au lazima iwe imetengenezwa tayari?

Yoyote. Katika hali ya kuchapisha tunachukua tawi jinsi lilivyo na kuchapisha saraka unayotaja. Katika hali ya CI bomba la mtoa huduma wako linaendesha amri yako ya ujenzi na kuweka matokeo kwenye tawi tofauti la kuchapisha, ambalo kisha tunalileta kama ref nyingine yoyote. Ya pili huweka ujenzi wako katika CI yako mwenyewe, ambapo siri zako na uhifadhi wako tayari vipo.

Je, push inasambazwa kiotomatiki?

Kwa chaguomsingi, ndiyo — tunasajili webhook kwenye hazina na kusukuma (push) kwenye tawi uliloteua kunaanzisha upelekaji. Unaweza kuzima hiyo na kuweka webhook, ambayo ni muhimu zaidi kuliko inavyosikika: uwasilishaji bado unarekodiwa, kwa hivyo unaweza kutazama kusukuma kwako kukifika kabla ya kuturuhusu kuchukua hatua juu yake.

Ulandanishi wa pande mbili ni nini?

Mabadiliko yanayofanywa kwenye maunzi yetu huwa 'commits' kwenye tawi lenu, na 'commits' kwenye tawi lenu hurudi kwenye tovuti. Imezimwa hadi mtakapoiwasha, kwa sababu kuiwasha ni uamuzi kuhusu hazina ya mtu mwingine na hatutawachukulia uamuzi huo. Mnachagua saraka inayolandanishwa — kwa kawaida mandhari au programu-jalizi, si faili elfu arobaini za mfumo mkuu wa WordPress.

Ni nini kitatokea ikiwa pande zote mbili zimebadilika?

Hakuna kinachoandikwa juu yake na hakuna kinachosukumwa. Usawazishaji unasimama, unakujulisha kuwa tawi limesogea zaidi ya commit tuliyoegemea, na unauliza upande gani unaotaka — kubakiza hazina, au kubakiza tovuti. Tovuti ambayo haijawahi kusawazishwa na inaelekeza kwenye tawi ambalo tayari lina commit pia ni hali yake yenyewe, na inauliza badala ya kukisia ukweli ni upi.

Tokeni yangu ya ufikiaji inalindwaje?

Tunakuonyesha haki ambazo muunganisho unahitaji kabla ya kuutengeneza, tunaangalia tokeni dhidi ya API ya mtoa huduma yenyewe wakati wa kuingiza — ili tokeni ambayo si sahihi au yenye upeo usio sahihi isihifadhiwe kabisa — na kisha tu kuiandika kwenye Vault. Haigusi kamwe nambari yetu ya kuthibitisha, kumbukumbu, faili ya mazingira au mstari wa amri. Ibatilishe kwa mtoa huduma au ondoa muunganisho hapa, wakati wowote upendao.

Ninawezaje kujua kama kwa hakika mnapokea mitumo (pushes) yangu?

Kadi ya hazina inaonyesha wakati mtoa huduma alipotuletea mara ya mwisho na kile alichosema. Haijawahi kuwasilishwa ndicho kipengele muhimu zaidi cha utambuzi kwenye skrini hiyo, kwa sababu "imeunganishwa lakini haijawahi kuwasilishwa" ndivyo hasa tokani yenye upeo usio sahihi au uwasilishaji uliozuiwa unavyoonekana — na hauonekani popote pengine. Kila uwasilishaji unakaguliwa saini kabla ya kuufanyia kazi.

Je, ninaweza kutumia upelekaji wa Pages kwenye safu ya Footprint-Free?

Inatolewa na imewekewa alama. GitHub Pages na GitLab Pages hushiriki miundombinu ya mtoa huduma na majina ya seva pangishi ya umma ya github.io na gitlab.io, na huo ni mkondo wa ufuatiliaji (footprint) — kitu pekee ambacho mstari huo upo ili kuepuka. Kwa mtandao usio na mkondo wowote (zero-footprint), peleka kwenye upangishaji uliotengwa badala yake. Kwingineko kote, Pages ni ya daraja la kwanza.

Kwa nini lazima nimchague Vercel waziwazi?

Kwa sababu kiwango chake cha bila malipo kimepewa leseni ya matumizi yasiyo ya kibiashara pekee. Tunakisia lengwa kutoka kwa akaunti ulizounganisha pale ambapo ni salama, na Vercel imetengwa kimakusudi kutoka kwa makisio hayo — kuunganisha akaunti hakupaswi kamwe kuweka tovuti ya kibiashara kimyakimya mahali ambapo leseni yake hairuhusu. Iteue na inafanya kazi sawasawa na nyinginezo.

Je, ninaweza kuona kile kilichotumwa na lini?

Ndiyo. Kila upelekaji hurekodi commit iliyochapishwa, ilipofanya kazi na jinsi ilivyomalizika, na kichupo cha Upelekaji cha tovuti huonyesha historia kando ya URL inayotumika. Upelekaji huendeshwa chinichini, kwa hivyo ukurasa husasishwa ujenzi unapokamilika badala ya kukufanya usubiri kielekezi cha kupakia.

Peleka kutoka kwa ghala lako

Anzisha jaribio la siku 14 bila kadi, unganisha GitHub au GitLab, na uelekeze tovuti kwenye tawi. Chapisha kwenye seva pangishi ya edge, au kwenye upangishaji wetu wenyewe huku faili zikisawazishwa pande zote mbili.

Anza bila malipo