From 5720357636f8de008d48b9cd082df85de7fa25e3 Mon Sep 17 00:00:00 2001 From: half-shell Date: Thu, 9 Mar 2017 11:47:03 +0100 Subject: [PATCH] Add branches setup in the README #2 --- README.md | 72 ++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 47 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 798d690..a2afec7 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,48 @@ -# softwareneedsyou -Software Needs You ! [Client] +# Software Needs You +[![CircleCI](https://circleci.com/gh/softwareneedsyou/softwareneedsyou/tree/develop.svg?style=shield)](https://circleci.com/gh/softwareneedsyou/softwareneedsyou/tree/develop) + +Ce depôt constitue la partie logiciel du projet [Software Needs You](https://github.com/softwareneedstou). +La partie serveur est accessible sur [ce dépôt github](https://github.com/softwareneedsyou/softwareneedsyou-server.git) + +## Setup +Ce projet utilise [gradle](https://gradle.org/) comme système de build. + +Pour compiler et lancer le programme une fois le dépôt cloné: +```bash +gradle build +gradle run +``` + +Le fichier executable `gradlew` est un wrapper générer automatiquement par gradle qui permet de télécharger le +version utilisée pour qu'elle soit utilisée en local. + +Lors de modifications de gradle, vérifier la configuration avec la commande `gradle check` qui ne nécessite +aucune compilation. + +Un documentation exhaustive est disponible sur [leur site](https://docs.gradle.org/3.4.1/userguide/userguide.html#gsc.tab=0). + +## Git +Le workflow git est le suivant: +```bash +# Clone du repo +git clone https://github.com/softwareneedsyou/softwareneeds.git +# Changement de branche +git checkout develop +# Création d'une branche pour la feature (à faire depuis la branche origin/develop) +git checkout -b / #feature individuelle +git checkout -b feature/ #feature commune +``` +Une fois la feature complétée, le merge sur la branche develop se fait via une +[pull-request](https://github.com/softwareneedsyou/softwareneedsyou/pulls), et un membre de l'organisation +review les changemnets avant d'accepter le merge. + +* Les merges sur la branches develop sont en fast-forward +* Les merges sur la branche master sont ponctuels et manuels. Se seront des commits de rebase, c'est à dire + qu'ils rassembleront tout les changements sous un seul commit. L'idéal est donc de les effectuer par + changement de version mineure. +* Les features sont discutées et décrites sur + [github](https://github.com/softwareneedsyou/softwareneedsyou/projects) +* Chaque pull-request répond à une issue qui correspond à une feature + +## Documentation -> description ici - - ----------- - -# Utilisation avec Gradle - -Globalement, Gradle s'utilise avec des "tâches" : `gradle `. - -`gradlew` est un wrapper générer automatiquement par gradle. -Ce script va télécharger la version utilisé pour compilé le fichier et l'utilisé en local. - -> **What is Gradle wrapper?** -> The Gradle wrapper allows you to run a Gradle task without requiring that Gradle is installed on your system. - -## Tâches -Pour voir la liste de toutes les tâches possible avec gradle : `gradle tasks --all`. - -## Compilation -Pour compiler et tester le projet : `gradle build`, puis `gradle run` pour lancer l'application. - -## Modification de gradle -Lors de modifications de gradle, vérifier la configuration avec `gradle check` (aucune compilation).