Composer-Installationsbefehl überschreibt .gitignore-Datei, Adobe Commerce

Dieser Artikel bietet eine Lösung für den Fall, dass eine verfolgte .gitignore-Datei von Composer in Adobe Commerce auf Cloud-Infrastrukturen 2.4.2-p1 und 2.3.7 überschrieben wird.

Betroffene Produkte und Versionen

Adobe Commerce auf Cloud-Infrastruktur 2.4.2-p1 und 2.3.7.

Problem

.gitignore Datei wird überschrieben, wenn der Composer-Installationsbefehl ausgeführt wird.

Schritte zur Reproduktion:

  1. Erstellen Sie ein leeres Verzeichnis für Ihren Arbeitsbereich.

  2. Führen Sie diesen Befehl im Stammverzeichnis aus:

    code language-bash
    composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition:2.4.2-p1.
    

    # oder 2.3.7

  3. Führen Sie dann die folgenden Befehle aus:

    1. echo "/this/line/should/stay" >> .gitignore

    2. git init

    3. git add * && git add .*

    4. git commit -m "Init" # Datei in Repository übertragen

    5. rm -rf vendor/*

    6. composer install

    7. git diff

      code language-git
      diff --git a/.gitignore b/.gitignore
      index c144521..7092a56 100644
      --- a/.gitignore
      +++ b/.gitignore
      @@ -70,4 +70,3 @@ atlassian*
      /generated/*
      !/generated/.htaccess
      .DS_Store
      -/this/line/should/stay
      

Erwartetes Ergebnis:

.gitignore wird nicht vom Komponisten überschrieben.

Tatsächliches :

.gitignore wird von jeder Composer-Installationsausführung überschrieben.

Lösung

Um Ihre benutzerdefinierten .gitignore file beizubehalten, müssen Sie sie im magento-deploy-ignore Abschnitt ignorieren.

{
...
"extra": {
    "magento-deploy-ignore": {
        "*": [
            "/.gitignore"
        ]
    }
    ...
}

Verwandtes Lesen

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a