Skip to content
This repository has been archived by the owner on Mar 16, 2018. It is now read-only.

Latest commit

 

History

History
52 lines (43 loc) · 3.62 KB

CONTRIBUTING.md

File metadata and controls

52 lines (43 loc) · 3.62 KB

Avant toute chose...

  1. Vérifiez que vous disposez d'un compte Github
  2. Créez votre issue si elle n'existe pas
    • Vérifiez que vous possédez bien la dernière version du code
    • Décrivez clairement votre problème, avec toutes les étapes pour le reproduire
  3. Attribuez-vous votre issue. C'est important pour éviter de se marcher dessus. Si vous n'êtes pas dans l'organisation et donc que vous ne pouvez pas vous attribuer directement l'issue, il vous suffit d'ajouter un commentaire clair dans celle-ci (comme "Je prends").
  4. Forkez le dépôt
  5. Installez l'environnement. Pour cela, lisez le fichier README.md et suivez la doc.

Contribuer à PortailVA

  1. Sur votre fork, créez une branche pour contenir votre travail
  2. Faites vos modifications
  3. Assurez-vous que le code suit les bonnes pratiques (la PEP-8)
  4. Si vous modifiez le modèle (les fichiers models.py), n'oubliez pas de créer les fichiers de migration : python manage.py makemigrations
  5. Si votre travail nécessite des actions spécifiques lors du déploiement, précisez-les dans votre issue
  6. Poussez votre travail et faites une Pull Request

Quelques bonnes pratiques

  • Respectez les conventions de code de Django, ce qui inclut la PEP 8 de Python
  • Le code et les commentaires sont en anglais
  • Le workflow Git utilisé est le Git flow. En détail :
    • Les arrivées de fonctionnalités et corrections de gros bugs se font via des PR.
    • Ces PR sont unitaires. Aucune PR qui corrige plusieurs problèmes ou apporte plusieurs fonctionnalité ne sera logiquement accepté ; la règle est : une fonctionnalité ou une correction = une PR.
    • Ces PR sont mergées dans la branche dev (appelée develop dans le git flow standard), après une revenue de code légère.
    • Pensez à préfixer vos branches selon l'objet de votre PR : hotfix-XXX, feature-XXX, etc.
    • La branche master contient exclusivement le code en production, vous ne devez donc pas faire vos commit dessus !

Tous les détails sur le workflow se trouvent sur la page dédiée.

  • Faites des messages de commit clairs et en anglais si possible

Les bonnes pratiques pour les PR et les commits

Les Pull-Requests

  • Lors de l'ouverture d'une PR, essayez de respecter le template suivant :

    Q R
    Correction de bugs ? [oui|non]
    Nouvelle Fonctionnalité ? [oui|non]
    Tickets (issues) concernés [Liste de tickets séparés par des virgules]

Les commits

  • Pour les commits, nous suivons le même ordre d'idée des standards Git, à savoir :

    • La première ligne du commit ne doit pas faire plus de 50 caractères
    • Si besoin, complétez votre commit via des commentaires, en respectant une limite de 70 caractères par ligne
    • Vous pouvez également (c'est d'ailleurs conseillé) référencer l'issue que vous fixez
    • Un commit doit être atomique ; il fixe / implémente une chose et le fait bien
  • Essayez d'éviter les commits dits inutiles (fix previous commit, ...). Si vous en avez dans votre Pull Request, on vous demandera probablement de faire un squash de vos commits.

N'hésitez pas à demander de l'aide, et bon courage !