Skip to content

Commit

Permalink
Add branches setup in the README #2
Browse files Browse the repository at this point in the history
  • Loading branch information
half-shell committed Mar 14, 2017
1 parent 8756591 commit 5720357
Showing 1 changed file with 47 additions and 25 deletions.
72 changes: 47 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
@@ -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 <github_username>/<feature> #feature individuelle
git checkout -b feature/<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 <task>`.

`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).

0 comments on commit 5720357

Please sign in to comment.