如何将composer包私有化,并放在git上

发布时间 2023-08-15 11:49:41作者: 默默地前进

 

以laravel框架举例:

1.创建私有 Composer 包并初始化 Git 仓库: 在你的项目根目录中打开命令行,并执行以下命令:

composer init --name=myvendor/my-package

这将引导你创建一个基于 Composer 的包,并在完成后将其初始化为一个 Git 仓库。

2.将自己的源码包,复制到刚刚创建的私有包的目录中。

3.打开私有包的 composer.json 文件,在其中添加刚才的包作为依赖项。示例如下:

{
    "name": "myvendor/my-package",
    "description": "My Private Package",
    "type": "library",
    "require": {
        "illuminate/support": "^8.0",
        "php": "^7.3"
    },
    "autoload": {
        "psr-4": {
            "MyVendor\\MyPackage\\": "src/"
        }
    },
    "repositories": [
        {
            "type": "git",
            "url": "git@github.com:your-username/my-private-repo.git"
        }
    ]
}

根据自己的使用情况编辑修改 "name""description" 和 autoload "psr-4" 中的命名空间。
4.将私有包关联到git仓库:

git remote add origin git@github.com:your-username/my-private-repo.git
git add .
git commit -m "Initial commit"

5.打开 Laravel 项目的根目录的 composer.json 文件,修改 "repositories" 部分,将仓库地址修改为私有 Git 仓库的地址。示例如下:

{
    "repositories": [
        {
            "type": "vcs",
            "url": "git@github.com:your-username/my-private-repo.git"
        }
    ],
    "require": {
        "myvendor/my-package": "^1.0"
    }
}
然后就好啦。