Push Securise
Pousse les commits vers le remote avec un verrou de securite qui empeche les push directs vers les branches protegees (main/master).
Verrou de Securite
IMPORTANT : Ce skill REFUSE systematiquement de pousser vers :
- •
origin/main - •
origin/master
Ce verrou est une mesure de securite pour eviter les push accidentels sur les branches principales.
Instructions
1. Verifier la branche courante
bash
git branch --show-current
2. Verifier le statut
bash
git status
Verifier :
- •S'il y a des commits a pousser
- •Si la branche track un remote
- •L'etat de la branche par rapport au remote
3. Appliquer le verrou de securite
AVANT tout push, verifier la branche cible :
bash
git rev-parse --abbrev-ref --symbolic-full-name @{upstream} 2>/dev/null || echo "no-upstream"
BLOQUER le push si la branche courante est main ou master :
Si la branche courante est main ou master :
- •NE PAS executer le push
- •Afficher un message d'erreur clair
- •Suggerer de creer une branche de feature
Message a afficher :
code
ERREUR : Push vers origin/main ou origin/master bloque Le push direct vers les branches principales est interdit pour des raisons de securite. Pour pousser vos changements : 1. Creez une branche de feature : git checkout -b feature/ma-feature 2. Poussez sur cette branche : git push -u origin feature/ma-feature 3. Creez une Merge Request / Pull Request
4. Executer le push (si autorise)
Si la branche n'est PAS main ou master :
Premier push (nouvelle branche) :
bash
git push -u origin <branch-name>
Push subsequent :
bash
git push
Push avec tags :
bash
git push --follow-tags
Workflow complet
- •Obtenir le nom de la branche courante
- •VERIFIER que ce n'est PAS
mainoumaster - •Si
mainoumaster→ BLOQUER et afficher le message d'erreur - •Sinon → executer le push normalement
- •Confirmer le succes du push
Exemples
Push autorise
code
Branche : feature/MOJ-1234-add-login → Push autorise vers origin/feature/MOJ-1234-add-login
code
Branche : fix/UNIV-456-bugfix → Push autorise vers origin/fix/UNIV-456-bugfix
Push bloque
code
Branche : main → BLOQUE - Afficher message d'erreur
code
Branche : master → BLOQUE - Afficher message d'erreur
Options supportees
| Option | Description |
|---|---|
--force | Force push (utiliser avec precaution) |
--force-with-lease | Force push securise |
--tags | Pousse aussi les tags |
--follow-tags | Pousse les tags annotes |
-u / --set-upstream | Configure le tracking de la branche |
Notes importantes
- •Le verrou sur main/master est NON NEGOCIABLE
- •Si l'utilisateur insiste pour pousser sur main/master, REFUSER et expliquer pourquoi
- •Suggerer toujours le workflow via Merge Request / Pull Request
- •Ce verrou protege contre les erreurs humaines, pas contre les intentions malveillantes