当我想在 GitHub 上为 Laravel 包发出 pull 请求时,我现在通过以下方式进行:
我觉得这有点麻烦 - 这实际上是正确的做法吗?
例如,如果我想为 voyager package 创建一个 PR我不得不
为步骤 1. & 2 执行以下命令。
>laravel new create-pr
>cd create-pr
>composer require tcg/voyager
>php artisan voyager:install
然后删除文件夹
tcg/voyager
并将 fork 克隆为新文件夹 tcg/voyager
.如果我跳过
composer require tcg/voyager
并直接将fork克隆到tcg/voyager
我无法安装该软件包,因为最佳答案
首先fork官方仓库tcg/voyager
进入您的个人存储库 iwasherefirst2/voyager
.然后
1) 创建一个新的 Laravel 项目
2) 添加仓库 iwasherefirst2/voyager
到 composer.json:
"repositories": [
{
"type": "vcs",
"url": "https://github.com/iwasherefirst2/voyager.git"
}
],
3) 现在安装
tcg/voyager
与 --pref-source
这将自动安装iwasherefirst2/voyager
进入 vendor/tcg/voyager
并设置git连接。composer require tcg/voyager --prefer-source
现在您可以更改
vendor/tcg/voyager
中的文件并推送它们(它们将被推送到您的本地存储库 `iwasherefirst2/voyager)。备注
1) 如果您想在应用程序的根目录中放置包文件夹
package/voyager
,你可以像这样创建一个符号链接(symbolic link):ln -s vendor/tcg/voyager package
2) 要在供应商中查看修改过的文件,您可以调用
composer status -v
$ composer status -v
You have changes in the following dependencies:
/path/to/app/vendor/symfony/yaml/Symfony/Component/Yaml:
M Dumper.php
3) 如果你运行
composer update
如果它覆盖了您的任何文件,您将收到警告$ composer update
Loading composer repositories with package information
Updating dependencies
- Updating symfony/symfony v2.2.0 (v2.2.0- => v2.2.0)
The package has modified files:
M Dumper.php
Discard changes [y,n,v,s,?]?
关于php - 如何在 GitHub 上为 Laravel 包使用 PR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48115694/