On va prendre un cas concret: j’ai fait un commit et en relisant ma merge request, je me rend compte que certains fichiers ne devraient pas y être:
Dans mon cas c’est le fichier src/test/java/com/globaldashboard/unit/dependencies/domain/PomUrlTest.java
L’idée va être de défaire le commit en local et de le refaire:
output de git log
⚠️ Avant de commercer, n’hésitez pas à faire une branche de sauvegarde avec la commande git branch <ma-branche-de-sauvegarde> que vous supprimerez une fois la manipulation effectuée. En faisant ça, vous éliminez tout risque de perdre du travail 🙂
Je vais défaire le commit list-cve-on-dependencies avec la commande:
git reset --soft HEAD^
Cette commande va déplacer notre HEAD sur le commit précédent et mettre tous les fichiers qui étaient commitdans la staging area. En d’autres mots, tous les fichiers que vous aviez modifié dans ce commit sont déjà “add” avec vos modifications.
En faisant un git log, on peut voir qu’on est de retour sur main et en faisant un git status, on voit que nos fichiers sont bien dans la staging area.
output git log:
output git status:
On a plus qu’à enlever le ou les fichiers qu’on ne souhaite pas commit des fichiers qui sont “add”.
Une fois fait, on peut faire un git status pour bien être sûr que le fichier n’est plus présent.
On refait un commit puis on force push avec git push –force-with-lease et c’est bon 👍
Note: utiliser git push –force-with-lease plutôt que git push -f permet de ne pas écraser la branche distante si quelqu’un a push sur celle-ci un commit que vous n’avez pas récupéré en local. Ca permet de limiter le risque d’écraser le travail de quelqu’un d’autre sans le vouloir 🙂
Votre changelog reprend les fonctionnalités que vous avez réalisé entre deux versions, ça tombe bien, votre historique git contient ces informations :) On va voir comment les extraire de git pour générer automatiquement un changelog exhaustif et fiable.
Le principe
Pour faciliter la maintenance de votre projet, il est d’usage d’avoir des commits parlants afin que tous les d...
Photo by Yancy Min on Unsplash
Contexte
Je suis développeur au quotidien et j'aime développer en dehors du travail également.
Parfois, il peut m’arriver de faire un kata entre midi et deux par exemple. J'aime bien du coup garder une trace de mon exerc...
Dans une application Spring, sauf exceptions, les Beans sont proxifiés. En d’autres mots, on n'interagit pas directement avec eux et ce mécanisme est à la base de l’AOP.
Beaucoup de mécanismes s'appuient sur l’AOP (les Transactions par exemple) et conn...
Prérequis
Il faut que vous ayez déjà installé un JDK. Exécutez la commande:
java --version
Si vous avez bien un output de ce type avec cette commande, vous pouvez continuer.
Dans le cas contraire, il faudra installer un JDK.
...