Ikonekta ang iyong sariling GitHub account sa isang site at pananatilihin naming naka-sync ang dalawa sa magkabilang direksyon. Ito ay libre, naka-off ito hanggang sa i-on mo ito, at nagko-commit lamang kami sa isang repository sa account na pagmamay-ari mo — hindi kailanman sa isa sa amin.
Ano ang sini-sync
Anumang baguhin mo sa mga file ng iyong site ay nagiging isang commit sa iyong repository, paano mo man ito binago: sa file manager, SFTP, ang WordPress theme editor, o isang SSH session. Hindi mo kailangang sabihin sa amin — ikinukumpara namin ang iyong site sa huling commit nito at ipinupush ang pagkakaiba.
Sa kabilang banda, ang isang push sa iyong nakakonektang branch ay mapupunta sa site.
Ano ang hindi namin kailanman iko-commit
Ang iyong wp-config.php ay hindi kasama, sadya at permanente. Naglalaman ito ng password ng iyong database at ng iyong mga authentication salt, at ang mga iyon ay hindi dapat mapunta sa isang repository — kahit sa isang pribado, dahil pinapanatili ng git ang history magpakailanman.
Hindi rin kasama: mga .env file, mga key at certificate, ang iyong uploads folder, mga cache, at node_modules. Ang isang repository ay ang source ng iyong site, hindi isang backup. Ang media ay para sa iyong mga backup, kung saan nakatago na ito, at ang paglalagay nito rito ay magpapabagal sa bawat push at magiging dahilan upang hindi mabasa ang bawat pagbabago.
Ano ang mangyayari kung nagbago ang magkabilang panig
Ito ang tanong na nararapat basahin. Sabihin nating nag-edit ka ng file sa file manager, at samantala ay nag-push naman ang isang kasamahan ng pagbabago sa parehong repository.
Humihinto kami. Hindi kami nagme-merge, at hindi namin ino-overwrite ang sinuman. Ipinapakita ng tab na Deploy ng site ang "May mga pagbabago ang iyong repository na hindi pa namin nakikita", pinapangalanan ang commit na kailangan mong tingnan, at naghihintay sa iyo. Walang mawawala sa alinmang panig habang naghihintay ito — ang iyong edit ay nasa site pa rin, ang kanilang commit ay nasa repository pa rin.
Pipili ka pagkatapos:
- Panatilihin ang mga file ng site na ito — ilalagay namin ang iyong bersyon sa ibabaw ng sa kanila. Mananatili ang kanilang mga commit sa history; walang mabubura.
- Gamitin ang repository, balewalain ang mga pagbabago sa site — ilalapat ang bersyon ng repository sa site, at ang mga pagbabagong ginawa mo rito ay ibabasura. Mapaminsala ang isang ito, kung kaya't ito ay isang sadyang pag-click at hindi kailanman isang bagay na gagawin namin sa ngalan mo.
Walang opsyon na "awtomatikong mag-merge", sinasadya ito. Ang isang merge na isinagawa namin ay lilikha ng isang file na hindi isinulat ninuman sa inyo, sa isang live site, nang hindi muna ito nakikita ng sinuman sa inyo.
Bakit maaaring huminto ang pag-sync
- Hindi mo ikinonekta ang iyong sariling GitHub account. Nananatiling naka-off ang switch hanggang sa gawin mo ito.
- Naghihintay ito sa iyo. Tingnan sa itaas — ang isang hold ay hindi kusang mawawala.
- Hindi maayos ang katayuan ng iyong account. Ang pag-sync ay kusang nagpo-pause at nagpapatuloy kapag na-update na ang pagsingil. Walang mawawala.
Ipinapakita ng tab na Deploy ang huling ilang pag-sync, kabilang ang mga walang nagbago. Kung walang laman ang listahang iyon at naka-on ang sync, malamang na hindi makapagsulat sa repository ang nakakonektang account — suriin ang access nito at kumonekta muli.
Pagpili kung ano ang isi-sync
Bilang default, ang buong site ay nag-sync. Sa isang WordPress site, karaniwang hindi iyon ang gusto mo: nangangahulugan ito ng bawat file ng WordPress core, na hindi mo isinulat at hindi mo ie-edit. Itakda ang "I-sync lamang ang folder na ito" sa iyong tema — halimbawa wp-content/themes/my-theme — at ang iba ay hindi gagalawin.