Git - 供应商文件夹修改 - .gitignore?

Bas*_*saa 3 git gitignore vendor laravel composer-php

所以我有一个Laravel安装,我在其中修改了供应商文件夹中的几个Laravel核心文件(主要是与邮件相关的).

我希望克隆回购的每个人都有明显的变化.处理这个问题的正确方法是什么?

  • 完全从.gitignore中删除vendor文件夹并将其全部索引?
  • 将vendor文件夹保留在.gitignore中,并为我修改的特定文件添加例外?(但是当协作者进行作曲家安装时,这会覆盖这些文件,对吧?)

Lim*_*nte 6

  1. Fork Laravel回购:https://help.github.com/articles/fork-a-repo/

  2. 在forked repo中创建一个新分支,分支名称必须以前缀为例dev-,例如dev-bugfix

  3. 在forked repo中进行更改,提交它们,将它们推送到dev-bugfix分支.

  4. 在您的包括分叉回购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"
    }
}
Run Code Online (Sandbox Code Playgroud)

在此之后,您可以随时提取自定义更改,而无需将其提交到您的特定项目.

在此处阅读有关分叉和加载包的更多信息:https://getcomposer.org/doc/05-repositories.md#vcs


PS.修改供应商包文件是一种不好的做法,以后再尝试不这样做.