91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎樣重構Composer源管理工具CRM為composer插件

發布時間:2020-12-18 11:50:11 來源:億速云 閱讀:174 作者:小新 欄目:軟件技術

這篇文章主要介紹怎樣重構Composer源管理工具CRM為composer插件,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

CRM 是我很久之前為管理 composer 源做的一款命令行工具,旨在通過簡單的命令在多個中國鏡像切換,從而方便的管理它們;

那個時候我對 composer 插件了解不是特別多,所以做法比較也粗暴,底層通過執行 composer 命令來達到切換源的目的,在linux 上用起來還好幾乎沒有特別的感知,但 win 上就會有些遲鈍了。這也是顯而易見的畢竟切換的時候相當于同時執行了多個命令;后來由于工作的機會了解了一下 composer 插件的開發,所以也就萌生了重構的念頭;

與 1.x 版本相比,2.x 主要有下面一些改變:

元數據存儲位置改變

在 1.x 版本中是在用戶的 Home 文件夾下自定義的一個文件,用戶所有的操作都最終持久化到這個 json 文件里去;新版則將元數據存儲到了 composer 全局路徑下的 config.json 里:

{
    "config": {
        "_alias": {
            "val": "validate",
            "up": "update",
            "req-sf": "require symfony/event-dispatcher symfony/console",
            "req": "require",
            "i": "install"
        },
        "_repositories": [{
                "name": "composer",
                "url": "https://packagist.org",
                "homepage": "",
                "author": ""
            }, {
                "name": "phpcomposer",
                "url": "https://packagist.phpcomposer.com",
                "homepage": "",
                "author": ""
            }, {
                "name": "composer-proxy",
                "url": "https://packagist.composer-proxy.org",
                "homepage": "",
                "author": ""
            }, {
                "name": "laravel-china",
                "url": "https://packagist.laravel-china.org",
                "homepage": "",
                "author": ""
            }]
    },
    "repositories": {
        "packagist": {
            "type": "composer",
            "url": "https://packagist.laravel-china.org"
        }
    }
}

這個是 composer 維護的一個文件,我們借用了一下在里面占用了一個字段。這么做也更加符合了 composer 生態

命令的改變

1.x 版本是個獨立入口應用,命令都是以crm關鍵詞開始,比如 crm ls 之類的;在新版插件化里 crm變成了一個命令提供者 (command provider) 角色,所以在新版我們使用 composer 入口;

新版用法

列出所有可使用的鏡像

$ composer repo:ls
  composer       https://packagist.org
  phpcomposer    https://packagist.phpcomposer.com
* composer-proxy https://packagist.composer-proxy.org
  laravel-china  https://packagist.laravel-china.org

標“*”表示當前正在使用的源;

切換鏡像

$ composer repo:use
Please select your favorite registry (defaults to composer)
  [0] composer
  [1] phpcomposer
  [2] composer-proxy
  [3] laravel-china
 >

你也可以直接追加鏡像名稱來跳過選擇

$ composer repo:use phpcomposer

添加選項 --current/-c 為當前項目切換源,默認是修改全局的源。

所有命令

執行下面命令查看

$ composer repo

以上是“怎樣重構Composer源管理工具CRM為composer插件”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節
推薦閱讀:
  1. composer
  2. Composer 學習

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

呼玛县| 名山县| 罗城| 孟津县| 泰安市| 和平区| 图片| 仁布县| 沁阳市| 大埔区| 六安市| 韩城市| 门源| 华宁县| 铜陵市| 姚安县| 馆陶县| 清流县| 汤阴县| 阳西县| 资中县| 普定县| 神农架林区| 盐城市| 七台河市| 福安市| 鄂伦春自治旗| 平潭县| 太仆寺旗| 临夏县| 仪陇县| 靖西县| 连城县| 静安区| 广汉市| 淮北市| 边坝县| 广丰县| 岑巩县| 定兴县| 三门峡市|