summaryrefslogtreecommitdiff
path: root/app-management.md
diff options
context:
space:
mode:
Diffstat (limited to 'app-management.md')
-rw-r--r--app-management.md78
1 files changed, 78 insertions, 0 deletions
diff --git a/app-management.md b/app-management.md
index b979018..8a0a001 100644
--- a/app-management.md
+++ b/app-management.md
@@ -212,3 +212,81 @@ Verifier le firewall (UFW) :
sudo ufw status
```
+## 6) Git - Remise en ordre apres modifications locales
+
+Cette section documente les commandes utilisees pour remettre la branche locale
+en etat propre, definir le suivi distant, et pousser les changements.
+
+### A) Retirer les fichiers sensibles ou locaux du commit
+
+```
+git reset HEAD .env output*.txt
+```
+
+- Retire `.env` et les fichiers `output*.txt` du staging.
+- Evite d'inclure des secrets ou des artefacts locaux dans le commit.
+
+### B) Corriger les droits si `.git` est en lecture seule
+
+```
+sudo chown -R "$USER":"$USER" /var/www/lucien-sens-bon
+```
+
+- Redonne les droits d'ecriture a l'utilisateur courant sur le depot.
+- Corrige l'erreur `Permission denied` lors de la creation du commit.
+
+### C) Committer en definissant l'identite temporairement
+
+```
+GIT_AUTHOR_NAME="toshiro" GIT_AUTHOR_EMAIL="toshiro@chillka" GIT_COMMITTER_NAME="toshiro" GIT_COMMITTER_EMAIL="toshiro@chillka" git commit -m "local changes on huitral"
+```
+
+- Injecte l'identite uniquement pour ce commit, sans modifier la configuration
+ globale de git.
+- Permet de valider le commit quand `user.name`/`user.email` ne sont pas definis.
+
+### D) Definir la branche distante suivie
+
+```
+git branch --set-upstream-to=origin/docs-git-dns
+```
+
+- Associe `docs-git-dns` a la branche distante pour autoriser `git pull`.
+
+### E) Rebaser sur la remote puis pousser
+
+```
+git pull --rebase
+git push origin docs-git-dns
+```
+
+- `pull --rebase` aligne la branche locale sur la remote sans commit de merge.
+- `push` publie les commits locaux sur la remote.
+
+### F) Recuperer le dernier code sur un serveur (alignement strict)
+
+```
+cd /var/www/lucien-sens-bon
+git fetch origin
+git checkout docs-git-dns
+git reset --hard origin/docs-git-dns
+```
+
+- S'assure d'etre a la racine du depot (pas dans `backend/`).
+- Aligne la branche locale strictement sur la remote (`origin/docs-git-dns`).
+- Ecrase les changements locaux sur cette branche.
+
+Verifier la presence d'un fichier sur la remote :
+```
+git ls-tree -r origin/docs-git-dns --name-only | grep "backend/scripts/patch-medusa.js"
+```
+
+- Confirme que le fichier existe bien sur la branche distante.
+
+Nettoyer les fichiers non suivis (optionnel) :
+```
+git clean -fd
+```
+
+- Supprime les fichiers/dossiers non suivis (ex: `output*.txt`, `uploads/`).
+