git-workflow
Handle squashing multiple commits and rebasing feature branches safely. Use when consolidating commits into a single commit, or rebasing feature branches onto updated development branches. Falls back from jj when not available.
Installation
Suivez les instructions du dépôt pour votre agent. Consultez les fichiers et dépendances avant l’installation.
Voir la source ↗GuidesInstructions
Git Workflow
Safe, non-interactive approaches for squashing commits and rebasing feature branches.
Tip: If jj is available (
jj rootsucceeds), prefer jj-workflow—it's simpler and has automatic safety via oplog.
Squash N Commits
git reset --soft HEAD~3
git commit -m "Your consolidated message"
That's it. The --soft flag keeps your changes staged and ready to commit.
Rebase Feature Branch
Update dev first, then rebase:
git fetch origin dev && git checkout dev && git pull
git checkout my-feature
git rebase --committer-date-is-author-date dev
git push -f origin my-feature
The --committer-date-is-author-date flag puts your feature commits on top chronologically.
Key Safety Rules
- Never rebase shared branches — only rebase local feature branches
-
Check
git statusfirst — ensure no uncommitted changes -
Create a backup branch:
git branch backup-$(date +%s) -
Review changes before committing:
git diff --cached
Pre-Commit Hook Changes
If hooks modify files during commit, stage and amend:
git add .
git commit --amend --no-edit
When Things Go Wrong
git rebase --abort # Stop rebase, go back
git reflog # See recent commits
git reset --hard <commit-hash> # Recovery
See REFERENCE.md for detailed workflows and troubleshooting.
Exemples
Consultez les exemples du dépôt source.
Voir la source ↗Historique source
- Date d’indexation
- 2026-01-20
- Mise à jour de l’index
- 2026-02-03
- Branch
- main
Les dates concernent ce répertoire. Consultez le dépôt pour l’historique du code.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!