Composer ئۈچۈن packagist.org دا تۈر ئېلان قىلىش
ئالدىنقى يازمىلىرىمىزدا Composer نىڭ نىمىلىكى ، قانداق ئىشلىتىش ، ھۆججەت مەنبەسىنى ئۆزگەرتىش قاتارلىق ئاساسىي بىلىملەر ھەققىدە توختالغان . ئەمدى Composer ئۈچۈن ئۆزىمىز بىرەر تۈر ئېلان قىلىىشنى سۆزلەپ ئۆتەيلى .ئاۋۋال تۆۋەندىكى بىر قانچە باسقۇچلۇق مەشخۇلاتنى قىلايلى . مۇناسىۋەتلىك نەزىرىۋىي بىلىملەر ھەققىدە ماس قەدەم باسقۇچلاردا تەپسىلىي توختىلىمىز . قىنى ئەمسە ئىش باشلاپ كەتتۇق .
1.تەييارلىق خىزمەتلەر
1.كومپىيوتېرغا Composer قاچىلانغان بولىشى كىرەك . ( قۇرۇق گەپ )
2. كومپىيوتېرغا git قاچىلانغان بولشى كىرەك .
3. github دا ئاكونتىڭىز بولىشى كىرەك . ( github ئىچىلمايدۇيەي،ئەلەي بەلەي ... ھەممىسى باھانە . github ئىچىلمىسا gitee , coding .... لارغا ئىچىلا ؟ )
2. تۈر مۇندەرىجىسى قۇرۇش
(1) خالىغان بىر يەرگە hello-composer (ياكى ئۆزىڭىز ياقتۇرغان خالىغان بىر نام) دەپ بىر ھۆججەت قىسقۇچ قۇرىمىز .بۇ بىزنىڭ تۈرىمىزنىڭ غول مۇندەرىجسى بولىدۇ .
(2) hello-composer مۇندەرىجسى ئىچىگە src ( تەۋسىيە ) ناملىق ھۆججەت قىسقۇچ قۇرىمىز . بۇ مۇندەرىجە بىزنىڭ تۈرىمىزنىڭ ئەمەلىي ئىشقا ئاشۇرۇلۇش كودلىرى قويۇلىدىغان مۇندەرىجە بولىدۇ .
(3) src مۇندەرىجسى ئىچىگە خالىغان كود يازىمز . مەسىلەن بۇ يەردە ھۆججەت نامى Hello.php ۋە class نامى Hello بولغان php ھۆججىتىدىن بىر قۇرايلى . (ھۆججەت نامى ۋە كىلاس نامى بىرلىككە كىلىش توغۇرلۇق psr-4 ھالقىلىق سۆزى ئارقىلىق ئىزدىنىپ باقساڭلار بولىدۇ . ) ھەمدە ھۆججەت ئىچىگە تۆۋەندىكى كودلارنى يازايلى .
يۇقارقى كودتىكى namespace نى يېزىش يازماسلىقنى ئۆزىمىزنىڭ تۈرىنىڭ ئالاھىدىلىكىگە ئاساسەن بىكىتسەك بولىدۇ . ئادەتتە يېزىش تەۋسىيە قىلىنىدۇ . بۇنداق بولغاندا باشقىلار Composer ئارقىلق تۈر ئەكىرگەندە vendor مۇندەرىجىسىگە namespace نىڭ نامىغا ماس ھالدا ھۆججەت قىسقۇچ قۇرۇلۇپ ، تۈرىمىزنىڭ باشقا تۈرلەر بىلەن توقۇنۇشۇپ قىلىش ئەھۋاللرىنىڭ يۈز بىرىشنىڭ ئالدىنى ئالىدۇ .
3. composer.json ھۆججىتى قۇرۇش
غول مۇندەرىجىگە يەنى hello-composer مۇندەرىجىسىگە composer.json ناملىق ھۆججەت قۇرىمىز . قولىمىز ئارقىلىق قۇرساقمۇ ياكى composer بۇيرۇقى ئارقىلىق قۇرساقمۇ بولىدۇ . ئادەتتە composer بۇيرۇقى ئارقىلىق قۇرۇش تەۋسىيە قىلىنىدۇ .
تېرمىنالدا composer init بۇيرۇقىنى ئىجرا قىلىمىز . ئىجرا بولۇش جەريانىدا تۈرىمىزنىڭ مۇناسىۋەتلىك ئۇچۇرلىرىنى تولدۇرىمىز .
(1) Package name بۇ بولسا بىزنىڭ تۈرىمىزنىڭ نامى . مەن stilly/hello-composer دەپ تولدۇردۇم (2) Discription بۇ بسا تۈرىمىزنىڭ ئىزاھاتى . مەن A composer test package دەپ تولدۇردۇم
(3) Author تۈر ئاپتورى ئۇچۇرى . مەن <stilly <learnfans@gmail.com دەپ تولدۇردۇم . ( ئىسىمدىن باشقا چوقۇم مۇشۇ شەكىلدە تولدۇرۇش كىرەك .)
(4) Minimum Stability تۈر ھالىتى . مەن dev دەپ تولدۇردۇم . ( ئاچقۇچىلار نەشىرى دىگەندەك مەنىدە)
(5) Package type تۈر تۈرى : يەنى قىستۇرمىمۇ ؟ تاق ھۆججەتمۇ ؟ ئەلەي بەلەي دىگەندەك . مەن package دەپ تولدۇردۇم .
(6) License ئىشلەتكۈچى ھوقۇق كىلىشىمى . مەن MIT دەپ تولدۇردۇم .
....
يۇقارقى باسقۇچلاردىن كىيىن ئەڭ ئاخىرىدا تۆۋەندىكى مەزمۇندىكى composer.json ھۆججىتى قۇرۇلىدۇ.
4. تۈرنى github قا تاپشۇرۇش
ئاۋۋال github تا يېڭىدىن بىر ئامبار قۇرىمىز . نامى hello-composer بولىدۇ .
ئاندىن ئالدىنقى باسقۇچىلاردا تەييارلىۋالغان hello-composer ناملىق ھۆججەت قىسقۇچنى git ئارقىلق github ئامبىرىغا يوللايمىز .
5. Packagist.org قا يوللاش
(1) ئاۋۋال Packagist تا ئاكونتىمىزغا كىرىمىز . ئاكونتىمىز بولمىسا github ئاكونتىمىز ئارقىلىق كىرسەكمۇ بولىدۇ . (github ئاكونتىمىزمۇ بولمىسا ..... mmp)
(2) كىرگەندىن كىيىن ئۈستىدىكى submit دىگەن تېزىملىكنى چىكىپ ، تۈر يوللاش بېتىگە كىرىمىز . سول تەرەپتىكى كىرگۈزۇش رامكىسىغا github تىكى تۈر ئادىرىسىنى تولدۇرۇپ check نى باسىمىز . تەكشۈرۈش تاماملانغاندىن كىيىن submit كۇنۇپكىسى پەيدا بولىدۇ . submit قىلىمىز .
مۇۋەپپەقيەتلىك تاپشۇرۇلغاندىن كىيىن تۆۋەندىكىدەك نەتىجىگە ئېرىشىمىز .
ئاھوي پىچەت مانا !......چوڭ ئىشتىن بىرنى قىلىۋالدۇق .
6. تۈرىمىزنى سىناش
خالىغان بىر مۇندارىجىدە ( مەسىلەن مەن composer-test ناملىق ھۆججەت قىسقۇچ قۇردۇم) تېرمىنال ئارقىلىق بايامقى تۈرنى يۈكلەيمىز .
composer require stilly/hello-composer
ئاندىن خالىغان بىر PHP ھۆججىتى قۇرۇپ ،تۆۋەندىكىدەك كودلارنى يېزىپ سىناپ باقىمىز .
نەتىجىدە Hello world دىگەن خەتلەر كۆرۈنسە بۇ تۈرىمىزنىڭ مۇۋەپپەقيەتلىك ھالدا Packagist.org دىن ئورۇن ئالغانلىقىنى بىلدۈرىدۇ .
7. تۈرنى ئاپتوماتىك يېڭىلاشنى بېكىتىش
تۆۋەندىكى رەسىمدىكى ئۇچۇرغا دىققەت قىلساق ، مۇنداق ئۇچۇرلارنى كۆرىمىز .
مەنىسى بولسا . ناۋادا بىز بۇ تۈرنى داۋاملىق ئەلالاشتۇرۇپ github قا يوللىغان بىلەن Packagist.org بۇ تۈرنى ئاپتوماتىك يېڭىلىمايدۇ . يەنى ھەر قېتىم update كۇنۇپكىسىنى بىسىش ئارقىلىق يېڭىلاش ئىلىپ بېرىشقا توغرا كىلىدۇ . بۇنداق ئەھۋال ئىنىقكى ياخشى ئەھۋال ئەمەس شۇنداققۇ ....
شۇڭا بىز github نىڭ GitHub Service Hook مۇلازىمىتى ئارقىلىق ئاپتوماتىك ھالدا Packagist.org يېڭىلاش ئۇقتۇرۇشى ئەۋەتىشنى تەڭشەيمىز .
قەدەم باسقۇچلار : github تىكى تۈر بېتىدىن Settings بېتىدىن Integrations & services تەڭشىكىگە كىرىپ Add service تۈرىگە Packagist نى تاللايمىز . تۆۋەندىكى رەسىمدىكىدەك .
ئاندىن تەلەپ بويىچە ئۇچۇرلارنى تولدۇرىمىز .
User: سىزنىڭ Packagist تىكى ئاكونىت نامىڭىز،Tokenسىزنىڭ Packagist دىكى API Token ڭىز ، Domain گە مۇقىم https://packagist.org دەپ تولدۇرىمىز .API Token غا Packagist دىكى ئەزالىق مەركىزىڭىزدىن ئېرىشەلەيسىز . مەسىلەن تۆۋەندىكىدەك .
Service قوشۇپ بولغاندىن كىيىن تۆۋەندىكىدەك نەتىجىگە ئېرىشىمىز . دىمەك Packagist ئۈچۈن GitHub Service Hook مۇلازىمىتى قوشۇش غەلبىلىك بولدى دىگەن گەپ .ھەمدە Composer ئۈچۈن packagist.org دا تۈر ئېلان قىلىش چوڭ ئىشىمىزمۇ ئاساسىي جەھەتتىن تاماملاندى دىگەن گەپ .
تورداشلار يۇقارقى باسقۇچلاردا مەسىلىگە يولۇقساڭلار ، مەزكۇر تېما ئاستىغا ئىنكاس يازساڭلار ئۆز ئارا پىكىرلىشىپ مەسىلىنى ھەل قىلساق بولىدۇ .