ZIm/crates/proto/proto
Eric Cornelissen 1d72fa8e9e
git: Add ability to pass --signoff (#29874)
This adds an option for `--signoff` to the git panel and commit modal.
It allows users to enable the [`--signoff`
flag](https://git-scm.com/docs/git-commit#Documentation/git-commit.txt-code--signoffcode)
when committing through Zed. The option is added to the context menu of
the commit button (following the style of the "Editor Controls").

To support this, the commit+amend experience was revamped (following the
ideas of [this
comment](https://github.com/zed-industries/zed/pull/29874#issuecomment-2950848000)).
Amending is now also a toggle in the commit button's dropdown menu. I've
kept some of the original experience such as the changed button text and
ability to cancel outside the context menu.

The tooltip of the commit buttons now also includes the flags that will
be used based on the amending and signoff status (which I couldn't
capture in screenshots unfortunately). So, by default the tooltip will
say `git commit` and if you toggle, e.g., amending on it will say `git
commit --amend`.

| What | Panel | Modal |
| --- | --- | --- |
| Not amending, dropdown | ![git modal preview, not amending,
dropdown](https://github.com/user-attachments/assets/82c2b338-b3b5-418c-97bf-98c33202d7dd)
| ![commit modal preview, not amending,
dropdown](https://github.com/user-attachments/assets/f7a6f2fb-902d-447d-a473-2efb4ba0f444)
|
| Amending, dropdown | ![git modal preview, amending,
dropdown](https://github.com/user-attachments/assets/9e755975-4a27-43f0-aa62-be002ecd3a92)
| ![commit modal preview, amending,
dropdown](https://github.com/user-attachments/assets/cad03817-14e1-46f6-ba39-8ccc7dd12161)
|
| Amending | ![git modal preview,
amending](https://github.com/user-attachments/assets/e1ec4eba-174e-4e5f-9659-5867d6b0fdc2)
| - |

The initial implementation was based on the changeset of
https://github.com/zed-industries/zed/pull/28187.

Closes https://github.com/zed-industries/zed/discussions/26114

Release Notes:

- Added git `--signoff` support.
- Update the git `--amend` experience.
- Improved git panel to persist width as well as amend and signoff on a
per-workspace basis.
2025-07-17 03:39:54 +00:00
..
ai.proto collab: Remove CountLanguageModelTokens RPC message (#29314) 2025-04-23 23:10:47 +00:00
app.proto Add overdue invoices check (#31290) 2025-05-23 20:02:02 +00:00
buf.yaml Extract a proto crate out of rpc (#12852) 2024-06-10 12:49:53 -06:00
buffer.proto lsp: Implement support for the textDocument/diagnostic command (#19230) 2025-06-05 19:42:52 +00:00
call.proto Use git config --global user.email for email address in automatic Co-authored-by (#32624) 2025-06-12 19:39:08 +00:00
channel.proto Add channel reordering functionality (#31833) 2025-06-04 16:56:33 +00:00
core.proto Use git config --global user.email for email address in automatic Co-authored-by (#32624) 2025-06-12 19:39:08 +00:00
debugger.proto debugger: Fix the JavaScript debug terminal scenario (#33924) 2025-07-05 19:48:55 -04:00
git.proto git: Add ability to pass --signoff (#29874) 2025-07-17 03:39:54 +00:00
lsp.proto debugger: Improve debug console autocompletions (#33868) 2025-07-05 16:20:41 +02:00
notification.proto Split protobufs into separate files (#28130) 2025-04-04 16:15:49 -07:00
task.proto Split protobufs into separate files (#28130) 2025-04-04 16:15:49 -07:00
toolchain.proto python: Re-land usage of source file path in toolchain picker (#31893) 2025-06-02 16:29:06 +00:00
worktree.proto debugger/tasks: Remove TaskType enum (#29208) 2025-04-26 01:44:56 +02:00
zed.proto Show inline previews for LSP document colors (#32816) 2025-06-17 13:46:21 +00:00