ភ្ជាប់គណនី GitHub ផ្ទាល់ខ្លួនរបស់អ្នកទៅកាន់គេហទំព័រមួយ ហើយយើងនឹងរក្សាទាំងពីរឱ្យស៊ីសង្វាក់គ្នាក្នុងទិសដៅទាំងសងខាង។ វាគឺឥតគិតថ្លៃ វាបិទរហូតដល់អ្នកបើកវា ហើយយើងធ្វើ commit តែទៅក្នុង repository លើគណនីដែលជាកម្មសិទ្ធិរបស់អ្នកប៉ុណ្ណោះ — មិនដែលធ្វើទៅកាន់ repository របស់យើងឡើយ។
អ្វីដែលត្រូវបានធ្វើសមកាលកម្ម
អ្វីៗទាំងអស់ដែលអ្នកផ្លាស់ប្តូរនៅក្នុងឯកសារគេហទំព័ររបស់អ្នកនឹងក្លាយជា commit មួយនៅក្នុង repository របស់អ្នក ទោះបីជាអ្នកផ្លាស់ប្តូរវាតាមវិធីណាក៏ដោយ៖ កម្មវិធីគ្រប់គ្រងឯកសារ, SFTP, កម្មវិធីកែសម្រួល theme របស់ WordPress ឬវគ្គ SSH។ អ្នកមិនចាំបាច់ប្រាប់យើងទេ — យើងប្រៀបធៀបគេហទំព័ររបស់អ្នកជាមួយ commit ចុងក្រោយរបស់វា ហើយ push ភាពខុសគ្នា។
ក្នុងទិសដៅផ្ទុយមកវិញ ការ push ទៅកាន់ branch ដែលបានភ្ជាប់របស់អ្នក នឹងទៅដល់គេហទំព័រ។
អ្វីដែលយើងមិនដែលធ្វើ commit
ឯកសារ wp-config.php របស់អ្នកត្រូវបានដកចេញដោយចេតនា និងជាអចិន្ត្រៃយ៍។ វាផ្ទុកពាក្យសម្ងាត់មូលដ្ឋានទិន្នន័យរបស់អ្នក និង authentication salts របស់អ្នក ហើយរបស់ទាំងនោះមិនគួរស្ថិតនៅក្នុង repository ទេ — សូម្បីតែ repository ឯកជនក៏ដោយ ព្រោះ git រក្សាទុកប្រវត្តិរហូត។
អ្វីដែលត្រូវបានដកចេញផងដែរ៖ ឯកសារ .env, សោ និងវិញ្ញាបនបត្រ, ថត uploads របស់អ្នក, cache និង node_modules។ repository គឺជាប្រភពកូដនៃគេហទំព័ររបស់អ្នក មិនមែនជាការបម្រុងទុកទេ (backup)។ មេឌៀគួរតែស្ថិតនៅក្នុងការបម្រុងទុករបស់អ្នក ដែលជាកន្លែងវាត្រូវបានរក្សាទុកស្រាប់ ហើយការដាក់វានៅទីនេះនឹងធ្វើឱ្យរាល់ការ push មានភាពយឺតយ៉ាវ និងរាល់ការផ្លាស់ប្តូរមិនអាចអានបាន។
អ្វីដែលកើតឡើងប្រសិនបើភាគីទាំងសងខាងមានការផ្លាស់ប្តូរ
នេះគឺជាសំណួរដែលគួរតែអាន។ ឧបមាថាអ្នកកែសម្រួលឯកសារមួយនៅក្នុងកម្មវិធីគ្រប់គ្រងឯកសារ ហើយក្នុងពេលជាមួយគ្នានោះ មិត្តរួមការងារម្នាក់ push ការផ្លាស់ប្តូរទៅកាន់ repository ដូចគ្នា។
យើងនឹងផ្អាក។ យើងមិនធ្វើការ merge ទេ ហើយយើងក៏មិនសរសេរជាន់លើអ្នកណាម្នាក់ឡើយ។ ផ្ទាំង Deploy របស់គេហទំព័រនឹងបង្ហាញថា "repository របស់អ្នកមានការផ្លាស់ប្តូរដែលយើងមិនទាន់បានឃើញ" ដោយបញ្ជាក់ឈ្មោះ commit ដែលអ្នកត្រូវពិនិត្យមើល និងរង់ចាំអ្នក។ គ្មានអ្វីត្រូវបានបាត់បង់នៅភាគីទាំងសងខាងទេខណៈពេលដែលវារង់ចាំ — ការកែសម្រួលរបស់អ្នកនៅតែមាននៅលើគេហទំព័រ ហើយ commit របស់ពួកគេនៅតែមាននៅក្នុង repository។
បន្ទាប់មកអ្នកជ្រើសរើស៖
- រក្សាទុកឯកសារនៃគេហទំព័រនេះ — យើងដាក់កំណែរបស់អ្នកពីលើកំណែរបស់ពួកគេ។ commit របស់ពួកគេនៅតែមាននៅក្នុងប្រវត្តិ គ្មានអ្វីត្រូវបានលុបឡើយ។
- ប្រើប្រាស់ repository, បោះបង់ការផ្លាស់ប្តូរនៅលើគេហទំព័រ — កំណែរបស់ repository នឹងត្រូវបានអនុវត្តទៅលើគេហទំព័រ ហើយការផ្លាស់ប្តូរដែលអ្នកបានធ្វើនៅទីនេះនឹងត្រូវបានបោះបង់។ ជម្រើសនេះមានការលុបបំបាត់ ហេតុដូច្នេះហើយទើបវាទាមទារការចុចដោយចេតនា និងមិនដែលជាអ្វីដែលយើងធ្វើជំនួសអ្នកឡើយ។
មិនមានជម្រើស "merge ដោយស្វ័យប្រវត្តិ" ទេ ដោយមានបំណងទុកជាមុន។ ការ merge ដែលធ្វើឡើងដោយពួកយើងនឹងបង្កើតឯកសារមួយដែលគ្មានអ្នកណាម្នាក់ក្នុងចំណោមអ្នកទាំងពីរបានសរសេរ នៅលើគេហទំព័រផ្ទាល់ ដោយគ្មានអ្នកណាម្នាក់បានឃើញវាជាមុនឡើយ។
ហេតុអ្វីបានជាការធ្វើសមកាលកម្មអាចនឹងឈប់
- អ្នកមិនទាន់បានភ្ជាប់គណនី GitHub ផ្ទាល់ខ្លួនរបស់អ្នកទេ។ កុងតាក់នឹងនៅតែបិទរហូតដល់អ្នកភ្ជាប់វា។
- វាកំពុងរង់ចាំអ្នក។ សូមមើលខាងលើ — ការផ្អាកមិនអាចដោះស្រាយដោយខ្លួនឯងបានទេ។
- គណនីរបស់អ្នកមិនស្ថិតក្នុងស្ថានភាពល្អទេ។ ការធ្វើសមកាលកម្មនឹងផ្អាក ហើយបន្តឡើងវិញដោយស្វ័យប្រវត្តិនៅពេលការទូទាត់ប្រាក់ទាន់សម័យ។ គ្មានអ្វីត្រូវបានបាត់បង់ឡើយ។
ផ្ទាំង Deploy បង្ហាញការធ្វើសមកាលកម្មចុងក្រោយមួយចំនួន រួមទាំងការធ្វើសមកាលកម្មដែលគ្មានអ្វីផ្លាស់ប្តូរផងដែរ។ ប្រសិនបើបញ្ជីនោះទទេ ហើយការធ្វើសមកាលកម្មត្រូវបានបើក គណនីដែលបានភ្ជាប់ទំនងជាមិនអាចសរសេរទៅកាន់ repository បានទេ — សូមពិនិត្យមើលសិទ្ធិចូលប្រើរបស់វា ហើយភ្ជាប់ឡើងវិញ។
ការជ្រើសរើសអ្វីដែលត្រូវធ្វើសមកាលកម្ម
តាមលំនាំដើម គេហទំព័រទាំងមូលនឹងធ្វើសមកាលកម្ម។ នៅលើគេហទំព័រ WordPress ជាទូទៅនោះមិនមែនជាអ្វីដែលអ្នកចង់បានទេ៖ វាមានន័យថារាល់ឯកសារនៃ WordPress ស្នូល ដែលអ្នកមិនបានសរសេរ និងមិនកែសម្រួល។ កំណត់ "ធ្វើសមកាលកម្មតែថតនេះប៉ុណ្ណោះ" ទៅកាន់ theme របស់អ្នក — ឧទាហរណ៍ wp-content/themes/my-theme — ហើយឯកសារដែលនៅសល់នឹងត្រូវបានទុកចោល។