Quelques principes et commandes - jramanath/IoT_Mines GitHub Wiki

Principes

  • La branche master contient une version fonctionnelle de notre projet
  • La branche develop contient la version en cours de développement
  • On ne push jamais directement sur master qui est protégée. Faire ses modifications sur une nouvelle branche de develop, puis faire une pull request qui fera l'objet d'une validation

Procédure pour le développement d'une nouvelle fonctionnalité

  • Créer une branche à partir de develop, par exemple newFeatureSensor
  • Faire ses modifications, commiter, pusher, puis faire une pull request
  • Attendre la code review, réagir aux commentaires, une fois la branche finalisée, on peut la merger sur develop

Premiere copie du repository :

$ git clone httpFromGitHub

Commandes utiles pour git

On peut manipuler git en ligne de commande via cmd (pour Windows). Ouvrir l'interface via Ctl+R puis taper cmd.

Pour créer une nouvelle branche à partir de la branche develop :

$ git checkout -b newFeatureSensor

S'assurer avant d'être sur la branche develop en faisant git branch puis git checkout develop si besoin.

Pour faire un commit en local, mettre d'abord ses modifications dans la zone de "stage" (en gros la liste qui répertorie les fichiers qui vont être intégrés au prochain commit) :

$ git add .

Puis faire un commit :

$ git commit -m "name of the commit, or relevant info"

Verifier le statut du repo local :

$ git status

Verifier le statut du repos distant :

$ git remote show origin

Pour pousser une nouvelle branche vers le repo :

$ git push -u origin newFeatureSensor

Pour fusionner n commits (avant une merge sur develop par exemple) :

$ git rebase -i HEAD~n

En cas de rebase, il faut pusher la branche en forçant :

$ git push --force

Plus d'aide : Git Basics