Dec 19, 2014 4:22:25 PM FME FME avatar   820    

Gestion des branches avec GIT

Git Logo

Branches

Pour les plugins génériques et le core, deux branches permanentes sont utilisées :

  • la branche develop est la branche dans laquelle sont faits tous les développements.
  • la branche master correspondant au code dans sa version releasée. Aucun commit ne doit être fait sur cette branche. Un merge de la branche develop est fait dans cette branche au moment des releases.

Des branches temporaires peuvent être créées pour des nouvelles fonctionnalités. Leur nom correspond au code de l'évolution JIRA.

GIT Workflow

Commandes GIT

Pour une petite correction ou évolution

Il n'est pas nécessaire de créer une branche. La modification peut se faire directement sur la branche develop

git checkout develop
git pull origin develop
<< réalisation et commit des modifications >>
git push origin develop

Pour une correction ou évolution significative

Une branche temporaire feature (où feature désigne le code JIRA de l'évolution ou de la correstion) doit être créée. Les développement se font sur la branche feature. La branche est partagée sur le repository origin. A l'issue des développements

git checkout develop
git pull origin develop
git checkout -b JIRA-NNN
git push origin JIRA-NNN
<< réalisation et commit des modifications >>
git pull origin JIRA-NNN
git checkout develop
git pull origin develop
git merge JIRA-NNN
git push origin develop

Pour une contribution externe

L'auteur de la contribution doit forker le projet et créer une branche correspond au JIRA de sa contribution. Il pourra ensuite proposer sa contribution par le mécanisme de Pull Request de GitHub