1. #1
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    février 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : février 2018
    Messages : 4
    Points : 4
    Points
    4

    Par défaut Centralisé fichiers config dans un autre repository bitbucket ou github NodeJS

    Bonjour,

    Je suis débutant dans le langage NodeJs et j'aimerai centralisé tous les fichiers config (.gitignore, .eslint ...) dans un repository différent de celui du projet afin que lorsqu'un nouveau développeur pull le projet en faisant une commande dans le prompt les fichiers config viennent directement se télécharger à la racine du projet commun.

    En regardant quelques vidéos, j'ai vu le package check-build qui permettait de faire ceci, en l'essayant j'ai réussit à récupéré des fichiers d'un autre repository avec la commande check-build mais j'ai l'impression que celui-ci n'est plus mis à jour depuis pas mal de temps. En retirant la ligne eslint aucun problème mais lorsque j'exécute check-build avec eslint d'inscrit dans le prompt ce type de message apparaît pour la ligne eslint :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    [eslint]
    internal/child_process.js:323
        throw errnoException(err, 'spawn');
     
    Error: spawn UNKNOWN
        at _errnoException (util.js:1022:11)
        at ChildProcess.spawn (internal/child_process.js:323:11)
        at exports.spawn (child_process.js:502:9)
    Donc voilà si une âme charitable pouvait m'aider ^^ car vraiment là je suis bloqué. Si vous connaissez un autre package permettant de récupérer des fichiers d'un autre repository pour les télécharger et les mettre à la racine du projet commun je suis preneur ^^. Etant donné que je ne connais pas encore très bien nodeJS je me demandait même si cela n'était pas possible directement dans le package.json du projet.

    En vous remerciant d'avance

  2. #2
    Modérateur
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2005
    Messages
    3 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2005
    Messages : 3 239
    Points : 11 897
    Points
    11 897

    Par défaut

    Citation Envoyé par zack08 Voir le message
    j'aimerai centralisé tous les fichiers config (.gitignore, .eslint ...) dans un repository différent de celui du projet afin que lorsqu'un nouveau développeur pull le projet en faisant une commande dans le prompt les fichiers config viennent directement se télécharger à la racine du projet commun.
    Ce n'est pas la bonne pratique. Ces fichiers sont relatifs à ton projet, ils doivent être versionnés avec les sources.

    Sur tout projet JavaScript géré avec npm les deux seules étapes pour avoir un environnement de travail opérationnel doivent être git clone <url-repo> et npm install. Généralement l'étape suivante est de jouer npm test puis npm start.
    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

    Trust me, i'm an engineer !
    https://www.youtube.com/watch?v=rp8hvyjZWHs

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    février 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : février 2018
    Messages : 4
    Points : 4
    Points
    4

    Par défaut

    d'accord merci Marco46, c'est parceque je me disais que peut être il aurait été plus judicieux de créer un repository avec les fichiers comme eslint, gitignore ... qui serait utilisé non pas dans un seul projet mais dans d'autres avec les mêmes configuration de syntaxe... du coup pour éviter de dry (don't repeat yourself) mais si vous me dîtes que c'est une mauvaise pratique je prends note ça me permet de commencer un projet dans un espace de travail sain.

    Merci à vous.

  4. #4
    Modérateur
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2005
    Messages
    3 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2005
    Messages : 3 239
    Points : 11 897
    Points
    11 897

    Par défaut

    Tu peux avoir ces fichiers stockés sur un repo pour une réutilisation dans un nouveau projet plus facile (un projet que tu crées).

    Mais sur chaque projet tu dois avoir une config propre et ready to go.

    L'idée générale c'est qu'une personne qui débarque sur ton projet clone le code source, installe les dépendances (d'exécution et de développement), et elle est prête à travailler.

    Dans certaines entreprises tu mets plusieurs heures (parfois jours) à obtenir un environnement de travail fonctionnel. C'est hallucinant. Ça doit pas prendre plus de quelques minutes.
    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

    Trust me, i'm an engineer !
    https://www.youtube.com/watch?v=rp8hvyjZWHs

  5. #5
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    février 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : février 2018
    Messages : 4
    Points : 4
    Points
    4

    Par défaut

    Justement c'est ce que j'aimerais faire "avoir ces fichiers stockés sur un repo pour une réutilisation dans un nouveau projet plus facile (un projet que tu crées)." En fait ce que j'aimerais c'est vraiment bien structurer mon premier projet car nous souhaitons en créer peut être d'autres par la suite. Ce qui serait génial c'est associé un repository global (pour quelques fichiers similaire entre plusieurs projets" aux autres repository "de projet" et lorsque l'on pull le repository d'un projet automatiquement les fichiers du repository global sont téléchargé à la racine du projet. Sur bitbucket je n'ai pas l'impression qu'il est possible de réalisé ce genre de procédé. J'ai parlé de check-build car apparemment ce package réalisait ce procédé (mais j'ai l'impression que ce package n'est plus tenu à jour).
    J'ai vu ce package suite à l'écoute de ce talk :
    car en les écoutant on a vraiment l'impression que leur projet est vraiment bien structurer. Actuellement je pull les fichiers du repository global mais forcement visual studio me créé un dossier à la racine de mon projet, ce que j'aimerais c'est vraiment télécharger les fichiers et non un dossier (ayant le même nom que mon repo global) incluant ces fichiers à la racine du projet.

    Encore merci Marco46 de prendre le temps de lire ma problématique et de m'apporter vote expérience .

  6. #6
    Modérateur
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2005
    Messages
    3 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2005
    Messages : 3 239
    Points : 11 897
    Points
    11 897

    Par défaut

    Citation Envoyé par zack08 Voir le message
    Actuellement je pull les fichiers du repository global
    Tu n'es pas censé pull le repo global mais le forker puis le cloner lors du démarrage d'un nouveau projet.

    Un fork c'est un double d'un repo existant sur un gestionnaire web de repository (github, gitlab, ...), cloner le repo c'est créer une copie sur ta machine locale qui aura dans la liste de ses remotes le repo d'origine nommé par convention origin.

    Pull un repo c'est l'acte de récupérer l'état d'un repo distant sur ton repo local et de l'y merger, c'est à dire un fetch puis un merge. C'est différent !

    Citation Envoyé par zack08 Voir le message
    visual studio me créé un dossier à la racine de mon projet
    Je me demande si tu ne fais pas une confusion avec le répertoire dédié à l'IDE utilisé. Par exemple avec Intellij ça sera .idea. Sur leur repository de bootstrap comme ils l'appellent (ce type de repo est appelé souvent starter) .idea est dans la liste des exclusions de leur .gitignore pour indiquer à git de ne pas versionner ce répertoire.

    Donc si ce répertoire correspond à la config locale de ton IDE il te suffit simplement d'ajouter ce répertoire au .gitignore de ton projet starter.


    Merci pour la vidéo elle est très bien
    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

    Trust me, i'm an engineer !
    https://www.youtube.com/watch?v=rp8hvyjZWHs

  7. #7
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    février 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : février 2018
    Messages : 4
    Points : 4
    Points
    4

    Par défaut

    Merci pour les explications c'est vrai qu'étant donné que je commence même avec bitbucket les termes sont dorénavant plus clair. Du coup maintenant le problème est que bitbucket ne me permet pas de cloner le contenu de mon repository starter dans mon dossier local du projet qui est non vide. J'aimerai simplement cloner le contenu de repository starter à la racine du dossier local du projet sans devoir créer un dossier pour les fichiers télécharger depuis Bitbucket. Je viens de voir qu'il était possible de juste télécharger un fichier en téléchargeant le fichier au format raw avec cette syntaxe : https://raw.githubusercontent.com/us...ranch/filename, du coup je vais faire un bat pour télécharger les fichiers raw de mon repository directement. Je ne sais pas si c'est la solution mais ça commence à avancer ^^.

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/12/2006, 12h14
  2. Convertir un fichier .jar dans un autre format.
    Par Strappal dans le forum Java ME
    Réponses: 2
    Dernier message: 29/06/2006, 19h32
  3. [XML] Integrer des données d'un fichier xml dans un autre ?
    Par vpet dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 16/03/2006, 18h41
  4. [C#] Ouvrir un fichier PDF dans une autre fenetre
    Par ZePostman dans le forum ASP.NET
    Réponses: 3
    Dernier message: 15/03/2006, 13h41
  5. Importer le contenu un fichier xml dans un autre fichier xml
    Par gedeon555 dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 27/07/2005, 11h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo