Support `fixup` workflow
- Vorherrschende Sprache
- Rust
- Sterne
- 22.5k
- Forks
- 773
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
**Is your feature request related to a problem? Please describe.**
I'd love a shortcut for `git commit --fixup ` from within gitui. [Here](https://dev.to/koffeinfrei/the-git-fixup-workflow-386d) is an article describing a common use case for it, but I'll give a short summary.
What this does is create a new commit with `fixup! commit message>`. You can then run `git rebase -i --autosquash` to squash the fixup commits into the target commits. This allows you to defer fixes/ammends to previous commits without messing with git history.
A nice use case is when a PR is under review. It let's you mark changes to existing commits without the reviewers losing track of what's been reviewed (as you would if you did `git commit --amend` or a rebase). Once the PR is approved you neaten the commit history using `git rebase -i --autosquash`.
**Describe the solution you'd like**
I'd like a new shortcut on the commit panel to trigger a `git commit --fixup `. e.g. `ctrl-f`. This would bring up a view similar to the `logs` panel which would allow choosing the commit to fixup.
To be clear - this would only perform `git commit --fixup ` and not `git rebase -i --autosquash`. No rebase should be involved.
**Describe alternatives you've considered**
Current workflow is:
1. Stage changes
2. Find the commit in logs view, copy the commit hash
3. Exit gitui
4. Manually `git commit --fixup `
5. Re-enter gitui, continue
**Additional context**
This was previously requested in #829 which was closed as completed - I think incorrectly as I [commented](https://github.com/extrawurst/gitui/issues/829#issuecomment-1895881991).
I've created a new issue instead of attempting to resurrect that one.
Beitragsleitfaden
Rechercherichtung
Beginne im Commit-Panel und vergleiche sein Verhalten mit der Log-Ansicht. Verfolge anschließend, wie gitui git commit aufruft. Die Funktion ist fertig, wenn eine Tastenkombination es Benutzern ermöglicht, einen Ziel-Commit auszuwählen und git commit --fixup auszuführen, ohne einen Rebase zu starten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- git, rust
- Bereich
- cli, devtools
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 30/100