Teach you how to create and publish a composer package from scratch
How to publish the composer package? The following article will show you how to create and publish a composer package from scratch. I hope it will be helpful to you!
1. Preparation
Register and log in to your github account, github.com
Install the git software:
Register and log in to the packagist account: packagist.org/
2. Create an online warehouse
1. Open github, click the plus sign in the upper right corner, and select new repository
2. Then, make relevant settings, as shown below:
Here you need to enter the project name, description, whether it is public, whether to initialize readme, git Ignore files, open source licenses, and other information.
3. Pull the online warehouse to the local
Complete the above operation, and it will jump to the warehouse page after success.
- #Then click the code button on the right, and then click to copy the git address of this warehouse.
- Go back to the local area, open the git software, and run the clone command to pull
git clone https://github.com/china-li-shuo/oss-sdk.git
3. Composer initialization
1. First enter the project directory and command in git
cd oss-sdk/
2. Then run the initialization command
composer init
See the picture above for detailed settings.
Note: package type: library is the warehouse, corresponding to the require command after submission, project is the project, which can be run directly after downloading, corresponding to the create-project command.
3. Configure autoload
After initialization, open the local composer.json folder for modification. Attached is my composer.json file, which has detailed comments
{ "name": "china-li-shuo/oss-sdk", #包名称 "description": "Alibaba cloud, Tencent cloud, qiniu cloud, object storage",#包描述信息 "type": "library",#类型,可选e.g. library, project, metapackage, composer-plugin "license": "MIT",#开源协议 "authors": [ { "name": "china-li-shuo",#作者 "email": "676050059@qq.com"#邮箱 } ], "require": { # 需要安装的扩展 "php": ">=7.1.0", "qcloud/cos-sdk-v5": ">=2.0", "aliyuncs/oss-sdk-php": "^2.4.0", "phpunit/phpunit": "^5.0|^6.0", "qiniu/php-sdk": "^7.3" }, "autoload": { # 自动加载: 注意了, 这里有 psr-4, psr-2 多种规范, 并且,注意目录和命名空间 "psr-4": { "lishuo\": "src" } } }
Save it after making changes, and then run the command to reload.
composer dump-autoload
4. Create the basic package code
This corresponds to the configuration in autoload->psr-4 above, as well as the flies configuration First create a src directory
1. Switch to the local directory
cd oss-sdk
2. Then run the command git add .command to submit the file to the local warehouse
git add .
3. Then git commit -m adds a commit comment
git commit -m '第一个composer包'
4. Then git push is submitted and the file is submitted to github
git push
$ git push origin master fatal: unable to access 'github.com/china-li-sh…': OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054
Reference: https:/ /blog.csdn.net/weixin_41010198/article/details/119698015https://blog.csdn.net/u013894429/article/details/789608136. Submit to packagist
- Then paste the github project address into the box
composer require china-li-shuo/oss-sdk is unsuccessful, indicating that your package does not have a version number and your package needs to be released. Version information, that is to say, you just need to add the
tag tag to your github warehouse.
发布版本参考链接:https://juejin.cn/post/6938227254191194120#heading-7
七、composer更换镜像源
更换镜像:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
查看composer配置
composer config -l -g
初始化配置(无需运行)
composer config -g --unset repos.packagist
更多编程相关知识,请访问:编程教学!!
The above is the detailed content of Teach you how to create and publish a composer package from scratch. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Laravel is a PHP framework for easy building of web applications. It provides a range of powerful features including: Installation: Install the Laravel CLI globally with Composer and create applications in the project directory. Routing: Define the relationship between the URL and the handler in routes/web.php. View: Create a view in resources/views to render the application's interface. Database Integration: Provides out-of-the-box integration with databases such as MySQL and uses migration to create and modify tables. Model and Controller: The model represents the database entity and the controller processes HTTP requests.

When developing an e-commerce website, I encountered a difficult problem: how to provide users with personalized product recommendations. Initially, I tried some simple recommendation algorithms, but the results were not ideal, and user satisfaction was also affected. In order to improve the accuracy and efficiency of the recommendation system, I decided to adopt a more professional solution. Finally, I installed andres-montanez/recommendations-bundle through Composer, which not only solved my problem, but also greatly improved the performance of the recommendation system. You can learn composer through the following address:

When developing websites using CraftCMS, you often encounter resource file caching problems, especially when you frequently update CSS and JavaScript files, old versions of files may still be cached by the browser, causing users to not see the latest changes in time. This problem not only affects the user experience, but also increases the difficulty of development and debugging. Recently, I encountered similar troubles in my project, and after some exploration, I found the plugin wiejeben/craft-laravel-mix, which perfectly solved my caching problem.

Article summary: This article provides detailed step-by-step instructions to guide readers on how to easily install the Laravel framework. Laravel is a powerful PHP framework that speeds up the development process of web applications. This tutorial covers the installation process from system requirements to configuring databases and setting up routing. By following these steps, readers can quickly and efficiently lay a solid foundation for their Laravel project.

I'm having a tricky problem when doing a mail marketing campaign: how to efficiently create and send mail in HTML format. The traditional approach is to write code manually and send emails using an SMTP server, but this is not only time consuming, but also error-prone. After trying multiple solutions, I discovered DUWA.io, a simple and easy-to-use RESTAPI that helps me create and send HTML mail quickly. To further simplify the development process, I decided to use Composer to install and manage DUWA.io's PHP library - captaindoe/duwa.

VprocesserazrabotkiveB-enclosed, Мнепришлостольностьсясзадачейтерациигооглапидляпапакробоглесхетсigootrive. LEAVALLYSUMBALLANCEFRIABLANCEFAUMDOPTOMATIFICATION, ČtookazaLovnetakProsto, Kakaožidal.Posenesko

The Laravel framework has built-in methods to easily view its version number to meet the different needs of developers. This article will explore these methods, including using the Composer command line tool, accessing .env files, or obtaining version information through PHP code. These methods are essential for maintaining and managing versioning of Laravel applications.

When developing a Laravel application, I encountered a common but difficult problem: how to improve the security of user accounts. With the increasing complexity of cyber attacks, a single password protection is no longer enough to ensure the security of users' data. I tried several methods, but the results were not satisfactory. Finally, I installed the wiebenieuwenhuis/laravel-2fa library through Composer and successfully added two-factor authentication (2FA) to my application, greatly improving security.
