[英]Composer create-project. Point at specific branch
我创建了一个Laravel仓库的分支,对它进行了一些更改,并将作曲家文件中的名称重命名为votemike / laravel。 我现在想基于这个repo创建一个新项目,所以我打电话给:
composer create-project --prefer-dist votemike/laravel --repository='{"type":"vcs","url":"https://github.com/votemike/laravel"}' testing
然而,我的终端然后突然说出Reading composer.json of votemike/laravel (v5.2.23)
它逐渐递减。 结果项目似乎是一个正常的Laravel项目,没有我的更改。 然后我尝试了:
composer create-project --prefer-dist votemike/laravel:master --repository='{"type":"vcs","url":"https://github.com/votemike/laravel"}' testing
但这似乎也不起作用。
任何人都可以帮我解决我需要运行的命令吗? 我假设我的电脑不应该读取每个版本的作曲家文件。 命令可以简化吗?
谢谢,
迈克尔
更新:
由于这是一个自定义的Composer项目,我想知道你是否可以使用我撰写博客文章的自定义创建项目脚本: Composer创建项目脚本
您只需将其放在项目的根目录下,编辑它以匹配并运行它 - 它将为您创建一个项目。
我用它来测试我自己的Composer项目,我认为它可以让你简单地创建你的自定义Laravel项目,而不必与Composer争夺版本。
https://gist.github.com/jacmoe/e9e8ed5fd45affb893a8
编辑:
你需要做的是编辑:
BRANCH_NAME=${1:-master}
DEST_DIR=${2:-~/Desktop/newapp}
PACKAGE_NAME=vendor/package
您可以按BRANCH_NAME
离开第一个( BRANCH_NAME
),但请更改DEST_DIR
和PACKAGE_NAME
!
PACKAGE_NAME
必须与您修改的Laravel源目录的composer.json
的包名称匹配。
通知 :
你可以从你的Laravel分支的本地克隆副本中使用它 - 它在本地工作 - 它不会尝试在Github或Packagist上找到任何东西。 它使用您所在的目录(工作目录)并将使用它来创建项目 - 您可以选择脚本创建它的位置。
原始答案:
脱离我的头顶:
composer create-project --prefer-dist --stability=dev votemike/laravel
或者,如果这不起作用,请尝试以下方法:
composer create-project --prefer-dist --stability=dev votemike/laravel:dev-master
或者,使用@dev
- 或dev-branch
代替dev-master
...
但是,第一个命令应该这样做。
您的克隆项目是否有任何标签? 如果没有,那就解释了为什么Composer正在采取行动。 告诉它使用dev-master
将解决这个问题,因为Composer默认只会拉动版本(major.minor.revision方案后面的标签)。
编辑:
在我的一个项目中,我正在使用包的主分支,在我的composer.json
使用以下条目:
"jacmoe/yii2-tale-jade": "dev-master",
如何将你的包装到你的composer.json中取决于你 - 手动,或者要求使用正确的版本(如dev-master
)
这要求您尝试要求的项目的composer.json不使用版本字段 - 如果它有一个版本字段,则删除它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.