Laravel 制作一套适合拉拉威尔风格的作曲家套装
我用Laravel为我的网站制作了一个CRUD, 我想在packagist中创建一个新包,并在运行“composer install”时创建一个新包 将这些文件放在我的新项目的Traits文件夹中。 有可能吗Laravel 制作一套适合拉拉威尔风格的作曲家套装,laravel,composer-php,Laravel,Composer Php,我用Laravel为我的网站制作了一个CRUD, 我想在packagist中创建一个新包,并在运行“composer install”时创建一个新包 将这些文件放在我的新项目的Traits文件夹中。 有可能吗 您可以为您的Trait创建一个composer包,但是当您使用composer install安装它时,它将被放置在供应商/文件夹中。这应该不是问题,因为您的项目仍然可以通过名称空间引用它 在将包提交到packagist.org之前,您可以只使用git repository进行尝试,看看将
您可以为您的Trait创建一个composer包,但是当您使用
composer install
安装它时,它将被放置在供应商/文件夹中。这应该不是问题,因为您的项目仍然可以通过名称空间引用它
在将包提交到packagist.org之前,您可以只使用git repository进行尝试,看看将其作为单独的包是否有意义。为了做到这一点,您可以将Trait和任何其他类移动到项目外部它们自己的库文件夹中。然后使用git init
、git add.
和git commit
创建一个新的git存储库,并提交应该构成库的类。为了使它成为composer可以识别的适当库,您还需要一个composer.json
。最简单的设置方法是使用命令composer init
。它将指导您创建初始的composer.json
,您可以在以后修改它。也提交这个文件。你可能需要添加更多的东西,比如自动加载信息。为此,您可以查看其他库的composer.json并查看其中的内容。现在,您可以将您的trait库推送到Github或任何您希望托管git存储库的地方。如果您不想让全世界都看到您的代码,您甚至可以首先使用私有的git存储库
现在您已经将库发布到github,可以在项目中使用它了。为此,您必须将git存储库添加到您的composer.json
:
"repositories": [
{
"type": "vcs",
"url": "https://github.com/yourusername/yourlibrary"
}
]
如果您使用的是私有存储库,则必须使用ssh url,因此在本例中,url将为git@bitbucket.org:yourusername/yourlibrary.git
这将允许composer从此存储库获取包信息。换句话说,它将从我们之前在单独的库文件夹中提交的composer.json
中读取库的名称。最后一步,在使用trait库的项目中,您现在可以运行composer require/
,您可能还必须将版本指定为dev master
,或者将分支别名添加到库的(!)composer.json
,或者在GitHub上发布库的版本,即添加版本标记
稍后,当您决定在packagist.org上发布库时,您在项目中所要做的就是删除composer.json
中的自定义存储库
部分,库将通过packagist自动获取。这不是composer包的工作方式。看见