প্যাকেজিস্ট দিয়ে কীভাবে আপনার পিএইচপি প্যাকেজ বিতরণ করবেন তা শিখুন

আপনি একটি সুন্দর পিএইচপি প্যাকেজ তৈরি করেছেন যা আপনার হৃদয় এবং আত্মাকে .ুকিয়ে দিয়েছেন এবং এতে গর্বিত। এখন বিতরণের সময় হয়েছে এবং একটি মূল অংশটি নিশ্চিত করছে যে আপনি অন্যকে আপনার প্যাকেজ ডাউনলোড এবং ব্যবহারের সহজতম পথ সরবরাহ করছেন তবে কীভাবে?

ধন্যবাদ, এর জন্য সমস্ত পিএইচপি প্যাকেজ নির্ভরতার জন্য প্যাকেজিস্ট একটি ফ্রি ডি ফ্যাক্টো রিপোজিটরি রয়েছে। আপনার পিএইচপি প্যাকেজটি কীভাবে প্যাক্যাগিস্টে তালিকাভুক্ত করা যায় তা শিখুন, অন্যকে একটি আদেশ দ্বারা এটি ডাউনলোড এবং ইনস্টল করার অনুমতি দেয়।

আপনার প্যাকেজটি যথাযথভাবে গঠন করুন

বিতরণ করার আগে, আপনার প্যাকেজটি সঠিকভাবে কাঠামোগত করা দরকার এবং অবশ্যই নেমস্পেস ব্যবহার করতে হবে। আপনার প্যাকেজটির জন্য একটি রুট নেমস্পেসের বিষয়ে সিদ্ধান্ত নিন। এটি আপনার ইচ্ছামত কিছু হতে পারে তবে সাধারণত এটি লেখক প্যাকেজনাম র পরামর্শ দেওয়া হয়।

উদাহরণস্বরূপ, জেএসমিথ ব্লগপোস্টার নামের স্থানটি অন্যকে জানায় প্যাকেজের বিকাশকারী জেসমিথ নামে চলে যায় এবং এটি তাদের ব্লগপোস্টার নামের প্যাকেজ

রুট নেমস্পেসের সিদ্ধান্ত নিয়ে, আপনার প্রকল্পে একটি / src / ডিরেক্টরি তৈরি করুন এবং এতে সমস্ত পিএইচপি ফাইলগুলি সরান। প্রতিটি ফাইলের শীর্ষে যথাযথ ঘোষণা থাকতে হবে, সুতরাং / src / ডিরেক্টরিতে থাকা সমস্ত পিএইচপি ফাইল অবশ্যই শুরু করতে হবে:

 
<?php
namespace JSmithBlogPoster;

নেমস্পেসের ঘোষণাটি ডিরেক্টরি কাঠামোর সাথে সম্পর্কিত। উদাহরণস্বরূপ, আপনার যদি /src/Images/Uploader.php এ একটি ফাইল থাকে তবে ফাইলটির শীর্ষে আপনার থাকতে হবে:

 
<?php
namespace JSmithBlogPosterImages;
class Uploader
{
}

সর্বশেষে, নিশ্চিত করুন যে সমস্ত পিএইচপি ফাইলের শ্রেণিবিন্যাস ফাইলের নামের মতো, উপরের উদাহরণটি দেখায়। আপলোডার.এফপি ফাইলের ক্লাসের নাম আপলোডার রয়েছে

একটি প্যাকেজিস্ট অ্যাকাউন্ট নিবন্ধন করুন

আপনার যদি ইতিমধ্যে একটি না থাকে তবে একটি প্যাক্যাগিস্ট অ্যাকাউন্ট তৈরি করুন , এটি দ্রুত এবং বিনামূল্যে। যদিও প্রয়োজন নেই, উপরের অংশে আপনি যে রুট নেমস্পেসের বিষয়ে সিদ্ধান্ত নিয়েছেন ঠিক সেই একই ব্যবহারকারীর সাথে নিবন্ধভুক্ত করার এটি আদর্শ অনুশীলন। যদি সেই ব্যবহারকারীর নামটি উপলব্ধ না হয় তবে অনুরূপ কিছু চয়ন করুন choose

প্যাক্যাগিস্ট অ্যাকাউন্টে আপনাকে এখনও কিছু করার দরকার নেই, তবে এটি প্রস্তুত করা কার্যকর useful

রচনা ফাইল তৈরি করুন

একটি পাঠ্য সম্পাদক খুলুন এবং আপনার প্রকল্পের মূল ডিরেক্টরিতে উদাহরণস্বরূপ নিম্নলিখিত বিষয়বস্তুগুলি সহ একটি রচনাশক্তি জেসন ফাইল তৈরি করুন:

 
{
"name": "jsmith/blogposter",
"description": "An excellent blog posting package...",
"type": "package",
"homepage": "https://yourdomain.com",
"license": "MIT",
"require": {
"php": ">=8.0.0"
},
"autoload": {
"psr-4": {
"JSmithBlogPoster": "src/"
}
}
}

উল্লেখ্য, উপরোক্ত ফাইলটির দুটি মাত্র গুরুত্বপূর্ণ দিক রয়েছে।

প্রথমে শীর্ষে নাম উপাদান। এটি অবশ্যই দুটি পংক্তিকে অবশ্যই একটি ফরোয়ার্ড স্ল্যাশ দ্বারা পৃথক করা উচিত, প্রথমটি আপনার প্যাকেগিস্ট ব্যবহারকারী নাম এবং দ্বিতীয়টি প্যাকেজের পছন্দসই নাম। উপরোক্ত উদাহরণে ব্যবহার করে, Packagist ব্যবহারকারীর নাম JSmith, এবং প্যাকেজের নাম blogposter হয়।

দ্বিতীয়ত, স্বয়ংক্রিয়তা বিভাগের নীচে আপনি লাইনটি লক্ষ্য করবেন:

 "JSmithBlogPoster": "src/"

এই লাইনটি সংশোধন করুন যাতে আপনি / src / ডিরেক্টরিতে পয়েন্টের উপর ভিত্তি করে রুট নেমস্পেসের সিদ্ধান্ত নিয়েছিলেন। যখন আপনার প্যাকেজটি অন্য কারও দ্বারা ইনস্টল করা হবে, সুরকার স্বয়ংক্রিয়ভাবে আপনার প্যাকেজটি যে সাব-ডিরেক্টরিতে ইনস্টল করা হয়েছিল তার ডিরেক্টরিতে নিজের রুট নেমস্পেসটি ম্যাপ করবে।

আপনার প্যাকেজটি গিথুবে আপলোড করুন

আপনাকে আপনার পিএইচপি প্যাকেজটি একটি গিথুব সংগ্রহস্থলে আপলোড করতে হবে, কারণ প্যাকেগিস্ট এটিই প্রধান একীকরণ পদ্ধতি। আপনি যদি কোনও গিথুব সংগ্রহশালা তৈরি এবং প্রকাশের সাথে ইতিমধ্যে পরিচিত না হন তবে অনুগ্রহ করে একটি দুর্দান্ত ধাপে ধাপে গাইডের জন্য গিথহাবে আপনার প্রথম সংগ্রহশালা কীভাবে তৈরি করবেন তা দেখুন।

/ Src / এবং composer.json ফাইলের মধ্যে থাকা সমস্ত ফাইল সহ আপনার পুরো পিএইচপি প্যাকেজ আপলোড করার নিশ্চয়তা দিন। আপনি যদি পুরো প্রকল্প ডিরেক্টরিটি কেবল গিটহাবে আপলোড করতে চান তবে আপনার প্রকল্প ডিরেক্টরিতে একটি টার্মিনাল খুলুন এবং চালান:

 git add ./*
git commit -m "Initial commit"
git push -u origin master

আপনাকে গিটহাব সংগ্রহস্থলটিতে একটি ট্যাগও যুক্ত করতে হবে, কারণ ট্যাগগুলি হ'ল প্যাকেজিস্ট কীভাবে আপনার প্যাকেজগুলির রিলিজ এবং সংস্করণ সংখ্যা ট্র্যাক করে। বর্তমান সংগ্রহস্থলটিকে v0.1 হিসাবে চিহ্নিত করতে কমান্ডগুলি চালনা করুন:

 git tag 0.1
git push --tags

প্যাকেজিস্টে পিএইচপি তালিকা যুক্ত করুন

সবকিছু এখন জায়গায় রয়েছে, তাই একটি হাসি দিয়ে আপনি এগিয়ে যেতে পারেন এবং প্যাকেজিস্টে তাত্ক্ষণিক তালিকার জন্য আপনার পিএইচপি প্যাকেজ জমা দিতে পারেন। জমা প্যাকেজ পৃষ্ঠাতে যান, এবং আপনার গিটহাব সংগ্রহস্থলটিতে URL লিখুন যা এমন কিছু হবে:

 https://github.com/jsmith/blogposter.git

চেক সাবমিট বাটনটি চাপুন এবং প্যাকেগিস্ট আপনার সংগ্রহশালা থেকে কমপোজ.জেসন ফাইলটি ডাউনলোড করবে, সাথে সাথে উপলভ্য যে কোনও ট্যাগ / প্রকাশনা এবং অন্যান্য তথ্য।

পরের পৃষ্ঠাটি নিশ্চিত করবে যে আপনি প্যাকেজটি প্রকাশ করতে চান; একবার নিশ্চিত হয়ে গেলে আপনি ইউআরএলে আপনার নতুন প্যাকেগিস্ট তালিকা দেখতে সক্ষম হবেন যেমন:

 https://packagist.org/packages/jsmith/blogposter

সুরকারের সাহায্যে আপনার প্যাকেজ ইনস্টল করুন

এটি ব্যবহার করে দেখুন, এবং সুরকারের সাথে আপনার পিএইচপি প্যাকেজটি ইনস্টল করুন। আপনার যদি ইতিমধ্যে সুরকার ইনস্টল না করা থাকে তবে আপনি এটি নিম্নলিখিত কমান্ড দিয়ে ইনস্টল করতে পারেন:

 sudo curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

একটি নতুন ডিরেক্টরি তৈরি করুন এবং এর মধ্যে কমান্ডটি চালান:

 composer require jsmith/blogposter

সুরকার এর যাদুটি কাজ করবে এবং আপনি লক্ষ্য করবেন একটি নতুন / বিক্রেতার / উপ-ডিরেক্টরি উপস্থিত হবে, যা আপনি যদি ভিতরে দেখেন তবে আপনি আপনার পিএইচপি প্যাকেজটি দেখতে পাবেন!

এটি পরীক্ষা করুন এবং আপনার পিএইচপি প্যাকেজ লোড করুন। উপরের উদাহরণটি ব্যবহার করে, যদি প্যাকেজে কোনও ফাইল /src/Blogger.php উপস্থিত থাকে, এটি লোড করার জন্য একটি দ্রুত পরীক্ষার স্ক্রিপ্ট হবে:

 
<?php
use JSmithBlogPosterBlogger;
// Load composer dependences
require("./vendor/autoload.php");
// Get blogger
$client = new Blogger();
echo "Got a " . $client::class . "
";

এগিয়ে যান, এবং বিশ্বের সাথে ভাগ করুন

আপনার পিএইচপি প্যাকেজটি যথাযথভাবে গঠন করা কতটা সহজ তা আপনি এখন শিখে এসেছেন এবং এটি প্যাকেগিস্টে তালিকাবদ্ধ করুন যাতে বিশ্বের যে কোনও ব্যক্তিকে তাত্ক্ষণিকভাবে ডাউনলোড করতে এবং আপনার প্যাকেজটিকে তাদের একক কমান্ডের সাথে অন্তর্ভুক্ত করার অনুমতি দেয় allowing

অভিনন্দন, আপনি এখন আপনার পিএইচপি প্যাকেজটি পিএইচপি ইকো-সিস্টেমের মধ্যে প্রধান বিতরণ চ্যানেল পর্যন্ত খুলেছেন। এগিয়ে যান, এবং আপনার সৃজনশীলতা এবং কঠোর পরিশ্রম বিশ্বের সাথে ভাগ করুন।