Skip to content

Latest commit

 

History

History
216 lines (132 loc) · 3.71 KB

File metadata and controls

216 lines (132 loc) · 3.71 KB
slideOptions
transition
slide

Better Git style


Workflow


Git Rules

  • History
  • Commits rules

“La dette constitue l’écart entre l’existant et l’état de l’art des composants (code, logiciel, infrastructure ...)”


Nasty 😢


Linear History ! 👍


Avoid Merge --no-ff


Rebase


Merge ff


“Le remboursement de la dette constitue l’investissement mis en oeuvre pour permettre au système d’être dans l’état de l’art”


Rules

  • 72 chars title
  • Body explains why and what
  • Imperative (add, fix, change)
  • English
  • Avoid many changes in one commit (split commits)

Source

source des règles


Naming

Respectez ce pattern ❗ [type] contexte ou scope: sujet (#ticket)

  • type: Type du commit (feat, docs, style...)
  • scope: Sur quoi le changement s'applique, une route, un composant, un fichier, une feature
  • sujet: Expliquer quoi et pourquoi
  • ticket: Numéro du ticket (facultatif)

Le #ticket est facultatif.


Types

type(contexte): le sujet, résumé

  • feat: nouvelle fonctionnalités pour l'utilisateur
  • fix: bug fix
  • docs: documentations
  • style: css, fonts, ajout de classes html
  • typo: format, syntaxe, eslint, orthographe
  • refactor: refactorisation, renommmage de fichier
  • test: ajout/modification de tests
  • chore: tâches de build, configurations, installation de libs (package.json, gitignore ...)

Exemples

feat(comments): add edition page component (#253)
fix(login): fix redirection after sign in (#7311)
test(route user/news): add unit test with Jasmine
style(items): change font color ...
typo(comments) js: fix eslint object spaces 
refactor(user component): rename ...  
docs(changelog): add release feature for 3.0.0
chore(gitignore): add idea ignoring files 

Angular commits


Gitflow

gitflow


Git tips


Git rebase

  • Historique propre
git checkout cible
git rebase branche origine

Git stash


Cas d'utilisation

  • Changer de branche et sauvegarder sont travail sans pour autant commit le travail en cours
git stash save "mon stash"
git stash apply stash@{id}
git stash show stash@{id} -p

liens utiles sur stash


Git amend

  • Changer le titre de mon dernier commit
  • J'ai oublié de rajouter une changement dans le dernier commit
git commit --amend
ou
git add -A
git commit --amend

Git rebase iteratif

  • Rassembler des commits en 1 seul
  • Editer (renommer, rajouter) un ancien commit
git squash 
git fixup //pareil que squash met ne garde pas les noms des commits à fusioner
git edit

Git reset --soft --hard

  • Revenir sur un commit précis et ne pas perdre les changements
git reset --soft commitId