git push -f
sur la branche main. /!\Travailler dans une branche dont le nom suit le convention de nommage wip/XXXXX-mini-description, où XXXXX est le numéro de ticket où le développement est suivi.
git checkout -b wip/XXXXX-mini-description
Une fois les commit faits dans la branche, pousser pour permette à Jenkins d'exécuter les tests :
git push origin wip/XXXXX-mini-description
Une fois la PR créée pour la branche, les tests seront exécutés par Jenkins et un mail vous sera envoyé en cas d'erreur.
doc: explain how we are supposed to commit (#12345)
Describe your changes in imperative mood, e.g. "make xyzzy do frotz" instead of "[This patch] makes xyzzy do frotz" or "[I] changed xyzzy to do frotz", as if you are giving orders to the codebase to change its behaviour. -- http://git.kernel.org/cgit/git/git.git/tree/Documentation/SubmittingPatches
On utilise gitea, installé ici : https://git.entrouvert.org/
Bugs et limitations connues :
~/.gitconfig
:[color] branch = auto diff = auto interactive = auto status = auto [pull] rebase = true
git --amend
: git reflog
, une fois retrouvé le bon commit on y retourne de façon non destructive par git reset <commit>
ou destructive (on perd les différences) par git reset --hard <commit>
(?) http://blogs.gnome.org/bastian/2015/02/12/a-guide-to-git-in-gnome-for-the-simple-minded/
~/.gitconfig
:[diff] context = 8
[remote "origin"]
, y ajouter :fetch = +refs/notes/*:refs/notes/*
J'ai créé ça :
C'est sympatoche:
pip install --user git-redmine
~/.config/git/config
:[redmine] url·=·https://dev.entrouvert.org/ key·=·<apikey à récupérer sur redmine sur la page de votre utilisateur>
git redmine project set <redmine-project-slug>
: associe le dépôt git à un projetgit redmine issue new
: ouvre un $EDITOR pour décrire un nouveau ticket, obtient un numéro et crée la branche wip/XXXX-description
pour commencer à bossergit redmine issue take XXXX
: prendre un ticket existant pour bossergit redmine rebase
: fais un pull sur main puis vérifie que la branche courante rebase sur maingit redmine issue submit
: fait un rebase
comme juste avant, puis si ça passe poser les patchs dans le ticket en passant le ticket en Solution Proposée (ça demande si on veut changer le status et s'affecter le ticket)git redmine merge-and-push
: pull un main récent, vérifie qu'un rebase de la branche est possible, puis merge la branche, supprime une éventuelle branche distante si créée pour jenkins, pousse sur origin/main puis demande s'il faut supprimer la branche locale