


Erfahren Sie, wie Sie ein Composer-Paket von Grund auf erstellen und veröffentlichen
怎么发布composer包?下面本篇文章就来带大家了解一下怎么从0创建并发布一个composer包,希望对大家有所帮助!
一、准备工作
注册并登录github账户,github.com
安装好git软件:
注册登录packagist账户:packagist.org/
二、创建线上仓库
1.打开github,点击右上角加号,选择new repository
2.而后,进行相关设置,如下图:
这里需要输入项目名称,描述,是否公开,是否初始化readme,git忽略文件,以及开源协议等信息。
3.拉取线上仓库到本地
完成上面的操作化,会成功后会跳转到仓库页面。
- 然后点击右侧的code按钮,然后再点击复制此仓库的git地址。
- 回到本地,打开git软件,运行clone命令拉取
git clone https://github.com/china-li-shuo/oss-sdk.git
三、composer 初始化
1、先进入项目目录,在git中命令
cd oss-sdk/
2、然后运行初始化命令
composer init
详细设置见上图。
注意:package type :library是仓库,对应提交后的require命令,project是项目,下载后直接能跑起来的,对应create-project命令。
3. 配置autoload
初始化完毕后,打开本地的composer.json文件夹可以进行修改。 附上我的composer.json文件,上面有详细注释
{ "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" } } }
更改完毕后进行保存,而后运行命令重新载入。
composer dump-autoload
四、创建基本包代码
这里对应上面的autoload->psr-4里面的配置,还有flies配置 先创建一个src目录
五、提交到github仓库
1. 切换到本地目录
cd oss-sdk
2.然后运行命令git add .命令,把文件提交到本地仓库
git add .
3.然后git commit -m 添加提交注释
git commit -m '第一个composer包'
4.然后git push进行提交,把文件提交到github
git push
报错:
$ git push origin master fatal: unable to access 'github.com/china-li-sh…': OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054
参考资料:https://blog.csdn.net/weixin_41010198/article/details/119698015
https://blog.csdn.net/u013894429/article/details/78960813
六、提交到packagist
- 打开github项目地址,复制网址:如github.com/china-li-sh…
- 然后把github项目地址粘贴到框中
点击提交,如果有重名的会提示,不用管直接点submit
看到下图,就成功了。
可以复制命令试一下是否能成功。
执行composer require china-li-shuo/oss-sdk
不成功,说明你的包没有版本号, 你的包要进行发布版本信息,也就是说你的github仓库要新增tag
标签就行了。
发布版本参考链接: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
更多编程相关知识,请访问:编程教学!!
Das obige ist der detaillierte Inhalt vonErfahren Sie, wie Sie ein Composer-Paket von Grund auf erstellen und veröffentlichen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Bei der Entwicklung von Websites mit CraftCMS stoßen Sie häufig mit Ressourcendateiproblemen, insbesondere wenn Sie häufig CSS und JavaScript -Dateien aktualisieren, alte Versionen von Dateien möglicherweise weiterhin vom Browser zwischengespeichert. Dieses Problem wirkt sich nicht nur auf die Benutzererfahrung aus, sondern erhöht auch die Schwierigkeit der Entwicklung und des Debuggens. Kürzlich habe ich in meinem Projekt ähnliche Probleme gestoßen, und nach einigen Erkundungen fand ich das Plugin Wiejeben/Craft-Laravel-Mix, das mein Caching-Problem perfekt löste.

Ich habe ein schwieriges Problem bei der Entwicklung eines neuen Laravel-Projekts gestoßen: So erstellen Sie schnell ein voll funktionsfähiges und einfach zu verwaltetes Inhaltsverwaltungssystem (CMS). Ich habe mehrere Lösungen ausprobiert, aber alle haben aufgrund komplexer Konfiguration und unbequemer Wartung aufgegeben. Bis ich das LaravelCMS-Paket MKI-Labs/Espresso entdeckte, das nicht nur einfach zu installieren, sondern auch leistungsstarke Funktionen und intuitive Verwaltungsschnittstellen bietet, die mein Problem vollständig gelöst haben.

Artikelzusammenfassung: Dieser Artikel enthält detaillierte Schritt-für-Schritt-Anweisungen, um die Leser zu leiten, wie das Laravel-Framework einfach installiert werden kann. Laravel ist ein leistungsstarkes PHP -Framework, das den Entwicklungsprozess von Webanwendungen beschleunigt. Dieses Tutorial deckt den Installationsprozess von den Systemanforderungen bis zur Konfiguration von Datenbanken und das Einrichten von Routing ab. Durch die Ausführung dieser Schritte können die Leser schnell und effizient eine solide Grundlage für ihr Laravel -Projekt legen.

Bei der Entwicklung eines großen PHP -Projekts habe ich ein häufiges, aber schwieriges Problem gestoßen: So verwalten und injizieren Sie Abhängigkeiten effektiv. Zunächst habe ich versucht, globale Variablen und manuelle Injektion zu verwenden, dies erhöhte jedoch nicht nur die Komplexität des Codes, sondern führte auch leicht zu Fehlern. Schließlich habe ich dieses Problem erfolgreich gelöst, indem ich die PSR-11-Containerschnittstelle und die Leistung des Komponisten verwendete.

Ich habe ein schwieriges Problem bei der Entwicklung einer komplexen Webanwendung: So behandeln Sie JavaScript -Fehler effektiv und protokollieren Sie sie. Ich habe mehrere Methoden ausprobiert, aber keiner von ihnen konnte meine Bedürfnisse erfüllen, bis ich diese Bibliothek Dvasilenko/Alterego_tools fand. Ich habe dieses Problem durch die Installation dieser Bibliothek durch Komponist leicht gelöst und die Wartbarkeit und Stabilität des Projekts erheblich verbessert. Komponist kann über die folgende Adresse gelernt werden: Lernadresse

Bei der Entwicklung von YII -Framework -Projekten begegnen Sie häufig Situationen, in denen Sie eine große Datenmenge aus der Datenbank erhalten müssen. Wenn nicht geeignete Maßnahmen ergriffen werden, kann das direkte Erhalten aller Daten einen Speicherüberlauf verursachen und die Programmleistung beeinflussen. Kürzlich, als ich ein Projekt auf einer großen E-Commerce-Plattform zu tun hatte, habe ich dieses Problem gestoßen. Nach einiger Forschung und Versuch löste ich das Problem schließlich über die Erweiterungsbibliothek von Pavle/Yii-Batch-Result.

Während der Entwicklung sind häufig HTTP -Anfragen erforderlich, um Daten zu erhalten, Daten zu senden oder mit externen APIs zu interagieren. Wenn jedoch komplexe Netzwerkumgebungen konfrontiert und die Anforderungen an die Anforderung konfrontiert sind, wird die effiziente Bearbeitung von HTTP -Anforderungen zur Herausforderung. Ich habe ein Problem in einem Projekt gestoßen: Ich muss häufig Anfragen an verschiedene APIs senden und die Anfragen protokollieren, um die nachfolgende Debugging und Analyse zu erleichtern. Nachdem ich mehrere Methoden ausprobiert hatte, entdeckte ich die Yiche/HTTP -Bibliothek. Es vereinfacht nicht nur die Verarbeitung von HTTP -Anforderungen, sondern bietet auch dynamische Protokollierungsfunktionen, wodurch die Entwicklungseffizienz stark verbessert wird.

Bei der Entwicklung einer Laravel -Anwendung habe ich auf ein gemeinsames, aber schwieriges Problem gestoßen: wie die Sicherheit von Benutzerkonten verbessert werden kann. Mit der zunehmenden Komplexität von Cyber -Angriffen reicht ein einzelner Kennwortschutz nicht mehr aus, um die Sicherheit der Benutzerdaten zu gewährleisten. Ich habe verschiedene Methoden ausprobiert, aber die Ergebnisse waren nicht zufriedenstellend. Schließlich installierte ich die WiebenieUwenhuis/Laravel-2FA-Bibliothek über Komponist und fügte meiner Anwendung erfolgreich die Zwei-Faktor-Authentifizierung (2FA) hinzu, wodurch die Sicherheit erheblich verbessert wurde.
