在Symfony Standard Edition应用程序中运行composer install
并要求使用Doctrine时,将添加一个名为“bin”的文件夹。该文件夹在composer.json
中配置:
"config": {
"bin-dir": "bin"
}
.gitignore
文件that comes with the Symfony Standard Edition包含了目录(导致git忽略目录及其所有内容),而'bin'文件夹似乎只包含指向'vendor'文件夹中文件的链接,这让我想到忽略该文件夹并让Composer处理它是个好主意。
然而,Symfony文档中的.gitignore
s from GitHub和示例中并不包含“bin”,事实上,我在Symfony的官方文档中找不到太多关于这个目录的信息,包括是否建议将其排除在版本控制之外。
是否真的建议让git忽略这个目录及其内容,Symfony的文档是否根本不是最新的?
2条答案
按热度按时间h6my8fg21#
Symfony 3及更高版本
在Symfony 3标准版中,
bin
目录的用途略有改变。Composer软件包(如phpunit
)中的二进制文件不再安装在bin
目录中,而是安装在vendor/bin
中。bin
目录包含console
和一些随Symfony backbone 提供的可选的其他二进制文件。因为这些文件应该提交到Git仓库,所以
.gitignore
文件中不应该再包含bin
目录。xcitsw882#
编辑:此答案仅适用于Symfony 2。有关Symfony 3及更高版本,请参阅下面的Nic Wortels answer。
是否真的建议让git忽略这个目录和它的内容,Symfony的文档是否根本不是最新的?
确实如此。
bin
目录与供应商目录相同,这取决于您的要求。应该忽略它。除非您要在其中放置自定义文件(例如,您将app/console
移动到bin/symfony
),否则应该忽略它,除非是那些自定义文件。来自GitHub的
Symfony2.gitignore
文件最后一次更新是在2年前。在这2年里,发生了很多事情(比如使用Composer和Symfony 2)。我不推荐使用它作为一个例子。这些文档确实不是最新的,如果你点击文档中的“编辑”按钮,你可以自己更新它。如果你这样做,我会很高兴的!:)