Skip to content

ContributionsCode

McMuzzle edited this page Mar 29, 2017 · 4 revisions

Contribution au code

Cette page à pour but de préciser les détails des contributions quand elles touchent au code source.

préparation de l'environnement

Avant de pouvoir vous lancer dans une contribution, vous devez avoir fait un fork du projet pour avoir une copie du dépt sur votre GitHub. Vous devrez ensuite le cloner sur votre poste de travail afin de pouvoir le modifier et proposer les corrections.

Pour maintenir votre fork à jour, il est intéressant d'ajouter un remote au dépôt sur votre poste de travail en faisant dans gitbash :

git remote add upstream https://github.com/BorealianStudio/OpenSpaceTycoon.git

Vous pourrez ensuite mettre votre master à jour depuis le master de borealianStudio en faisant :

git fetch upstream

pour récupérer l'état du dépôt borealianStudio

git checkout master

pour vous placer sur le contexte du master de votre dépôt

git merge upstream/master

Pour merger les changement du dépôt borealian sur votre master. Ensuite vous pouvez fait un "push" pour que votre fork sur github soit bien à jour.

Maintenant que vous avez un dépôt local bien à jour, vous pouvez attaquer les résolutions de bug. Afin d'effectuer les développements pour un "Issue", il est recommandé de créer une branche dédié. Il est également préférable de la tenir à jour en faisant un "merge" depuis le master régulièrement pour réduire les risques de conflits au PullRequest.

Choisir un Issue

Pour décider quoi faire comme contribution, il faut choisir un "Issue" qui est prêt à être programmé. On peut donc aller voir la page du projet : projet space tycoon

Sur la page, vous pourrez voir les Issues qui sont "A coder". Choisissez en un qui semble vous convenir.

Quoi faire?

Une fois que vous avez choisi un Issue, vous trouverez normalement une description de la tâche à accomplir dans la description en plus d'une information indiquant les tests qui sont nécessaire pour cet Issue.

Si par exemple, dans la description on parle de test nommées Issue#1, alors il faut chercher dans les sources et partout où vous trouvez [ignore("Issue#1")], vous devez supprimer cette ligne. Cela aura pour conséquence d'activer le test sur la ligne suivante. Votre mission sera donc de vous assurer que tout ces tests sont maintenant fonctionnels.

Lancer les tests en local

Dans visual studio community 2015 :

  • Pour lancer les tests : aller dans le menu Test/Run/All Tests.
  • Pour voir les resultats : Test/Windows/Test explorer. Vous y trouverez les test exécutés, ignorés, réussis et échoués. Normalement seul vos test devraient échouer à ce moment, et aucun test ne devrait échouer au moment de faire le pull request.

Intégration continue

Il est possible d'intégrer Travis à votre fork ce qui vous permet de profiter de l'intégration continue sur votre dépôt. L'intégration continue lance, à chaque push, une compilation du projet, une vérification du style du code et les tests automatiques. Il faut savoir que lors que vous ferez un pull Request, cette intégration sera également joué sur votre pull Request, et aucune chance de voir son pull request accepté si l'intégration n'est pas verte!

Style du code

Le style du code est vérifié par les administrateur lors qu'un pull request est fait (nous n'avons pas trouvé d'outil permettant de le faire sous linux et donc dans Travis-ci) Si votre code ne respecte pas le style, vous serez informé et vous n'aurez qu'à corriger pour continuer.

règles de style du code