所以我有一个Laravel安装,我在其中修改了供应商文件夹中的几个Laravel核心文件(主要是与邮件相关的)。
我希望克隆回购的每个人都有明显的相同变化。处理这个问题的正确方法是什么?
答案 0 :(得分:6)
Fork Laravel回购:https://help.github.com/articles/fork-a-repo/
在分叉回购中创建一个新分支,分支名称必须以dev-
为前缀,例如dev-bugfix
在forked repo中进行更改,提交它们,将它们推送到dev-bugfix
分支。
在composer.json
:
{
"repositories": [{
"type": "package",
"package": {
"version": "dev-bugfix",
"name": "laravel/framework",
"source": {
"url": "https://github.com/<your_github_username>/framework.git",
"type": "git",
"reference": "dev-bugfix"
}
}
}],
"require": {
"laravel/framework": "dev-bugfix"
}
}
在此之后,您可以随时提取自定义更改,而无需将其提交到您的特定项目。
在此处阅读有关分叉和加载包的更多信息:https://getcomposer.org/doc/05-repositories.md#vcs
PS。修改供应商包文件是一种不好的做法,以后再尝试不这样做。