Perfect — if you're just creating a **sandbox branch** to test or combine the content of `master`, `A`, and `B` **without committing anything**, that makes things even easier. Here's how you do it 👇 --- ## ✅ Objective Create a **temporary branch `C`** with: - All from `master` - All from branch `A` - All from branch `B` **Without committing anything** — just to play with the merged result. --- ## 🛠️ Steps (safe, no commits to `A`, `B`, or `master`) ```bash # 1. Start from master git checkout master # 2. Create a sandbox branch (you can name it whatever) git checkout -b sandbox-merge # 3. Merge branch A without committing (staging only) git merge --no-commit --no-ff A # 4. Merge branch B without committing (again, staging only) git merge --no-commit --no-ff B ``` At this point: - You’re on branch `sandbox-merge` - You have a working directory with combined changes from `master + A + B` - **Nothing has been committed** --- ### 💥 Want to discard everything when you're done? ```bash git checkout master git branch -D sandbox-merge # deletes the temp branch ``` --- ### 🔄 Want to try again later? Just repeat the steps. --- ### ✅ Bonus: Prevent accidental commits You can even configure your sandbox branch like this: ```bash git checkout -b sandbox-merge git config branch.sandbox-merge.mergeoptions "--no-commit --no-ff" ``` Parfaitement clair 👇 Tu veux **sauvegarder temporairement tes fichiers modifiés localement** sans les committer, **changer de branche**, puis **les retrouver plus tard en revenant**. --- ## ✅ Solution : utiliser `git stash` C’est exactement fait pour ça. --- ### 🛠️ Étapes simples #### 1. Sauvegarde tes modifications sans les perdre : ```bash git stash push -m "sauvegarde temporaire coraza" ``` > Optionnel mais conseillé : ajoute un message pour savoir ce que contient la stash --- #### 2. Change de branche sans problème : ```bash git checkout feature/IT-14817_coraza_waf ``` 🎉 Ça passe sans erreur maintenant. --- #### 3. Plus tard, quand tu veux retrouver tes modifs : Retourne sur ta branche de départ : ```bash git checkout ma-branche-initiale ``` Puis récupère ce que tu as stashed : ```bash git stash pop ``` --- ### 🧠 Bonus : plusieurs stashes ? Tu peux voir ce que tu as sauvegardé : ```bash git stash list ``` Et appliquer une stash spécifique : ```bash git stash apply stash@{1} ``` Ou la supprimer manuellement si plus utile : ```bash git stash drop stash@{1} ``` --- ### ❗ À savoir - `git stash pop` = applique et supprime - `git stash apply` = applique sans supprimer (utile pour tester) - Tu peux aussi stasher **seulement certains fichiers** si besoin ---