在食用本博文前,可以先去熟悉 composer 文件中的 [2.5. composer.json 完全解析],然後再把 2.6. 擴充套件包源倉庫看完,這樣下面的內容你將輕易理解為何這樣做,不看也沒事,後面再補上,我懂有時候只需要馬上能搞一個跑的通的環境!(本文注重操作,沒有任何原理解釋)
- SVN 可用的倉庫,(可以下載一個 VISUALSVN SERVER,先在本地練手)
- 安裝 TortoiseSVN
- 安裝 Composer
第一步:建立倉庫
第二步:使用 TortoiseSVN 拉取倉庫,並新增一個可用的包。
- 在根目錄新增一個 composer.json 檔案,最後目錄如下:
composer.json配置如下:{ "name": "bigbug/tt", "description": "local code", "type": "library", "license": "MIT", "authors": [ { "name": "Big Bug", "email": "bigbug.site@gmail.com" } ], "minimum-stability": "dev", "require": {} }
-
到 trunk 目錄,建立一個 src 資料夾 和 新增 composer.json
composer.json配置如下
{ "name": "bigbug/gang", "description": "test", "license": "MIT", "authors": [ { "name": "cg", "email": "cg@gmail.com" } ], "autoload": { "psr-4": { "Gang\\" : "src" } } }
-
到 src 目錄,新增一下可以執行的程式碼。
偷懶的話,可以直接用我的這個:Other.php
<?php namespace Gang; class Other { public static function put():void { for ($i = 1; $i <= 9; $i++) { for ($q = 1; $q <= $i ; $q++) { echo "$q X $i = ".($i*$q)."\t"; } echo "\n"; } } }
我的src目錄
-
回到 trunk 目錄,然後執行
composer update
,會自動生成 vendor目錄,最終目錄如下:
其中 index.php 是我自己新增的測試檔案,不用管它,把這些全部提交到 SVN
以上建立完畢一個包,下面將是如何使用這個包
第三步:使用
隨便建立一個資料夾,然後再裡面建立一個 composer.json 檔案,配置如下:
{ "name": "administrator/testpkg", "description": "test tt", "type": "project", "license": "MIT", "minimum-stability": "dev", "repositories": [ { "type": "vcs", "url": "https://zt14693/svn/tt" } ], "require": { "bigbug/gang":"*" } }
執行
composer update
將會拉取剛剛的包:新建一個 index.php 驗證是否成功匯入包:
<?php require __DIR__.'../../vendor/autoload.php'; echo Gang\Other::put();
執行如下:(看來是OK了)
以上已經滿足 本博文 標題內容,下面內容作為結尾
第四步:打標籤
然後我們修改我們的 composer.json
{
.....其他程式碼....
"require": {
"bigbug/gang":"1.0.0"
}
.....其他程式碼.....
}
執行composer update
成功使用了 tag! 完美收尾
- 原創不易,轉載請註明出處。
- 以上步驟,我沒有做過多解釋其中配置項,需要你自己去看文件。
- 不同環境,會出不同問題,但基本邏輯差不多,我希望遇到問題的你,能夠多看 composer 文件。
本作品採用《CC 協議》,轉載必須註明作者和本文連結