Ergebnis 1 bis 10 von 10

Thema: Contao 3.5 / Composer und Versionierung: Was gehört ins Repository?

  1. #1
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard Contao 3.5 / Composer und Versionierung: Was gehört ins Repository?

    Hallo zusammen,

    ich habe gerade ein Problem mit Composer und der Versionsverwaltung. Ich habe eine alte Contao 3.2 Version auf 3.5 aktualisiert, damit ich Composer einsetzen kann. Jetzt wollte ich das Repository auf einem anderen Rechner klonen, damit ein Kollege am Projekt mitarbeiten kann. Weil standardmäßig in der .gitignore der Order /composer (sinnvollerweise) ignoriert wird, ist natürlich von Composer nichts im Repository.

    Die composer.json und composer.lock sind jetzt erzwungen im Repository, aber was muss noch mit rein? Contao zeigt nun auf dem zweiten Rechner natürlich nur die Fehlermeldung an, dass die autoload.php nicht gefunden wurde. Wie geht ihr bei der Installation vor? Muss vor der Contao-Installation das Abhängigkeitsmanagement erstmal über die Kommandozeile angestoßen werden?

    LG Zinky

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Im Prinzip ja, also im Ordner /composer einfach
    Code:
    php composer.phar install
    ausführen. Ich denke anders geht es nicht.

  3. #3
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard

    Okay, das wäre ja durchaus machbar.

    Ich bin zudem irritiert, dass es zwei Vendor-Ordner gibt (/vendor und /composer/vendor) und jeweils auch zwei composer.json? In /vendor liegen die Contao-eigenen Abhängigkeiten (scss-php usw.) und Contao verlangt in system/initialize.php ja auch nach /vendor/autoload.php. Das finde ich gerade noch ziemlich verwirrend. Die Erweiterungen, die ich nutzen möchte, trage ich aber schon in /composer/composer.json ein, oder?
    Geändert von zinky (24.07.2015 um 09:50 Uhr)

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Zitat Zitat von zinky Beitrag anzeigen
    Ich bin zudem irritiert, dass es zwei Vendor-Ordner gibt (/vendor und /composer/vendor) und jeweils auch zwei composer.json? In /vendor liegen die Contao-eigenen Abhängigkeiten (scss-php usw.) und Contao verlangt in system/initialize.php ja auch nach /vendor/autoload.php. Das finde ich gerade noch ziemlich verwirrend.
    Ja, in /vendor liegen die Abhängigkeiten von Contao selbst, unter /composer/vendor die Abhängigkeiten, die über die davon unabhängige Paketverwaltung für Contao kommen.


    Zitat Zitat von zinky Beitrag anzeigen
    Die Erweiterungen, die ich nutzen möchte, trage ich aber schon in /composer/vendor ein, oder?
    Naja /composer/composer.json, ja

  5. #5
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Ja, in /vendor liegen die Abhängigkeiten von Contao selbst, unter /composer/vendor die Abhängigkeiten, die über die davon unabhängige Paketverwaltung für Contao kommen.
    Ok, das heißt, de facto müsste composer install einmal in TL_ROOT und einmal in /composer ausgeführt werden. Danke für die Erleuchtung, ich schaue mal, wie weit ich jetzt komme

    Zitat Zitat von Spooky Beitrag anzeigen
    Naja /composer/composer.json, ja
    Gott sei dank verstehst du mich auch so. Hab's korrigiert

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Stimmt, im Root auch einmal composer install ausführen, daran hatte ich nicht gedacht.

  7. #7
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard

    Jo, das klappt auch wunderbar. Leider kann ich jetzt im Unterverzeichnis composer install nicht mehr ausführen ("The system cannot find the path specified"). Leider wird nicht der Pfad angegeben, der nicht gefunden werden kann....

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

  9. #9
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard

    Daran liegt es leider nicht. Im Wurzelverzeichnis kann ich composer install ja auch ausführen. Aber leider nicht in /composer.
    Ich hab den Cache geleert, ich hab es mit der globalen composer installation versucht und composer nochmal erneut heruntergeladen und direkt im Verzeichnis ausgeführt. Bisher kein Erfolg.

    Edit: Ok, das Problem lag darin, dass der Ordner packages nicht existierte:
    Code:
    (...) 
    {
        "type": "artifact",
        "url": "packages"
    }
    (...)
    Ich habe das artifact-Repository entfernt und danach lief die Installation durch. Beim nächsten composer update flog mir dann aber um die Ohren, dass das aritfact-Repository nicht da sei und es wurde wieder hinzugefügt. Ich weiß nach wie vor nicht, wie das Repository aussehen muss, damit man das Projekt sauber installieren kann?
    Geändert von zinky (24.07.2015 um 11:27 Uhr)

  10. #10
    Maintainer Avatar von xtra
    Registriert seit
    02.07.2009.
    Ort
    Tuebingen
    Beiträge
    2.007
    User beschenken
    Wunschliste

    Standard

    du musst das Verzeichnis des artifact repository anlegen.

    einfach mkdir composer/packages
    du kannst a logischerweise auch eine .gitkeep reinschmeissen und somit das dir zu dienem repo hinzufygen.
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •