Bonjour j'ai une petite question sur Composer SVP.

Avec un projet (sur lequel on travail à 2), nous sommes obligé de faire un "php composer.phar dump-autoload" et un "php composer.phar dump-autoload -o" à chaque fois qu'on ajoute un fichier (ce qui rend le travail en groupe très difficile étant donné qu'on ne fait pas des commit toute les 5 minutes...).

Pourtant dans mon composer.json j'ai bien fait ceci :

"autoload": {
    "psr-4" : {
        "App\\": "app/",
        "": [
            "app/",
        ]
    }
},

Donc je ne comprend pas pour à chaque fois qu'on ajoute un fichier dans le dossier "app", il faut qu'on fasse "php composer.phar dump-autoload" et "php composer.phar dump-autoload -o"...

Aurez-vous une idée d'où ça pourrais venir SVP ? (Ou savez-vous ce que peut faire comme recherches dans Google) ?
ps : avec d'autres projets perso je n'avais jamais eu ce problème.
Merci d'avance.

7 réponses


Salut,

A la limite tu peux faire un hook pour que la commande "php composer.phar dump-autoload -o" se fasse de manière transparente à chacun de vos commit.

stephweb
Auteur

Merci pour ton conseil.
Mais je ne pense pas que ce soit possible.

On a un server de Dev. Et si par exemple j'ajoute un nouveau fichier (une nouvelle classe dans mon répertoire "app"), et que je suis obligé de faire un "php composer.phar dump-autoload -o", de mon coté ça marchera. Mais du coté de mon collègue (qui lui travail sur le meme serveur de Dév en meme temps que moi) ça plantera. Et j'ai pas envis de faire un commit à chaque fois que j'ajoute un nouveau fichier.
Voilà le problème.

Beh c'est justement le principe du versionning : Si vous travaillez à plusieurs sur un même projet, dès lors que des fichiers sont ajoutés/modifiés/supprimés, il faut commit les changements que la/les personne(s) avec qui tu travailles puisse rester à jour. Et puis j'ose espérer que vous avez des branches de dev et que vous ne bossez pas sur le master ?

stephweb
Auteur

Ok merci. Oui, on a plusieurs branch. Mais quand moi je bosse sur une branch, et mon collegue bosse sur une autre (on taf tout de meme sur le me serveur). L'idéal serai d'avoir plusieurs serveur de Dév, mais la où je bosse on a que 1 server de Dév.

Beh justement non, le principe du versionning est aussi de pouvoir bosser sur le même projet sur le même serveur..

stephweb
Auteur

A ok. Merci pour les conseils, j'ai pas trop l'habitude du travail en groupe.

Tu devrais suivre la formation GIT : https://www.grafikart.fr/formations/git