Das ist jetzt vielleicht eine doofe Frage, aber ich habe dazu nichts in der Dokumentation gefunden: Wozu wird das vendor
-Verzeichnis genutzt? Hat das was mit composer zu tun?
Anschlussfrage:
Ich habe mir ein kleines Bash-Skript gebastelt, welches mir cronjob-gesteuert DB-Dumps erstellt. Wäre vendor/meinKuerzel/dbdumps/
nun der richtige Platz dafür?
kurz: ja.
lange Erklärung: https://ellisv.github.io/2015/08/04/oxid-symfony-composer/
Edit 27.9.2020:
der Link ist mittlerweile tot, aber ich habe hier den entsprechenden Teil aus dem Google Cache geholt:
Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you.
Problems that Composer solves:
- Downloads dependencies of your project;
- Those dependencies have other dependencies which will be downloaded too;
- Solves which versions of libraries to download;
- Generates an autoloader.
Composer in OXID eShop
Now we are seeking for having following project structure:
|_ ...
|_ source/
| |_ ...
| |_ bootstrap.php
| |_ ...
|
|_ vendor/
| |_ ...
| |_ autoload.php
|
|_ ...
|_ composer.json
|_ composer.lock
|_ ...
An overview of what each of these does:
Directory/FileDescription
source/ |
A document root which also contains most parts of the OXID eShop. |
source/bootstrap.php |
OXID file which is responsible for bootstrapping the whole shop framework. |
vendor/ |
A directory which is controlled by Composer. It stores all vendor packages in there. You want this directory excluded from your version control system. |
vendor/autoload.php |
Composer generated file which is responsible for registering autoloader. |
composer.json |
A file which describes the dependencies of your project and may contain other metadata as well. |
composer.lock |
Composer generated file to lock versions of dependencies. This is generated on first composer install and on every composer update. |
2 Likes
Danke für die prompte Antwort. Damit komme ich weiter.