.nh .TH "GT-ISSUE-EDIT" "1" "Nov 2026" "gitea-cli" "gitea-cli Manual" .SH NAME gt-issue-edit - Edit issues: title, body, labels, assignees, milestone, deadline .SH SYNOPSIS \fBgt issue edit { | }... [flags]\fP .SH DESCRIPTION Edit one or more issues. Without flags on a terminal, a form edits one issue at a time, starting from its current values. Label and assignee flags add to or remove from each issue's current values; the --set flags replace them. The blocked_by and blocks JSON fields cost extra requests, made only when the output includes them (see gt help formatting). .PP Gitea changes the milestone, assignees and due date only for people who can write to the issues of the repository, and leaves them as they were for the author of an issue who cannot: gt then names the flags or form fields it left out and fails. Gitea refuses their label changes outright, so gt sends the other changes first. .SS ARGUMENTS .EX An issue can be supplied as argument in any of the following formats: - by number, e.g. "123" or "#123" - by URL, e.g. "https://gitea.com/OWNER/REPO/issues/123" - by repository and number, e.g. "OWNER/REPO#123" Several issues must be in one repository. Next to "OWNER/REPO#123" or a URL, "124" means OWNER/REPO#124, unless gt targets another repository otherwise, such as the clone's, --repo or GITEA_CLI_REPO: then the command fails, and the number must be qualified. .EE .SS JSON FIELDS .EX assignees, author, blocked_by, blocks, body, comments, created_at, due_date, id, kind, labels, milestone, number, ref, state, title, updated_at, url .EE .SH OPTIONS \fB--add-assignee\fP=[] Add assignees by \fBlogin\fR; @me for yourself .PP \fB--add-blocked-by\fP=[] Mark the issue as blocked by other \fBissues\fR: N, #N, OWNER/REPO#N or a URL .PP \fB--add-label\fP=[] Add labels by \fBname\fR; prefix repo: or org: to disambiguate .PP \fB--add-project\fP=[] Add the issue to the project with this ID or \fBtitle\fR, a number being an ID first (repeatable) .PP \fB-b\fP, \fB--body\fP="" New body; empty clears it .PP \fB-F\fP, \fB--body-file\fP="" Read the body from \fBfile\fR, or - for stdin .PP \fB--deadline\fP="" Due \fBdate\fR: YYYY-MM-DD, RFC3339 or Unix timestamp; only the date counts, as the end of that day in UTC; empty clears it .PP \fB-e\fP, \fB--editor\fP[=false] Edit the current body in the configured editor .PP \fB-h\fP, \fB--help\fP[=false] help for edit .PP \fB-m\fP, \fB--milestone\fP="" Move the issue to a milestone by \fBtitle\fR or ID, a number being an ID first .PP \fB--ref\fP="" Branch or tag the issue refers to; empty clears it .PP \fB--remove-assignee\fP=[] Remove assignees by \fBlogin\fR; @me for yourself .PP \fB--remove-blocked-by\fP=[] Lift the dependency on other \fBissues\fR: N, #N, OWNER/REPO#N or a URL .PP \fB--remove-label\fP=[] Remove labels by \fBname\fR .PP \fB--remove-milestone\fP[=false] Remove the issue from its milestone .PP \fB--remove-project\fP=[] Take the issue off the project with this ID or \fBtitle\fR, a number being an ID first (repeatable) .PP \fB--set-assignees\fP=[] Replace all assignees; an empty value clears them .PP \fB--set-labels\fP=[] Replace all labels; an empty value clears them .PP \fB-t\fP, \fB--title\fP="" New title .SH OPTIONS INHERITED FROM PARENT COMMANDS \fB--csv\fP[=""] Output CSV with the specified comma-separated \fBfields\fR, or all fields .PP \fB--cwd\fP="" Working \fBdirectory\fR for repository discovery .PP \fB--debug\fP[=false] Log the method, URL, status, and duration of each HTTP request to stderr .PP \fB--host\fP="" Gitea instance \fBURL\fR, including any base path .PP \fB--interactive\fP[=false] Allow prompts with machine output .PP \fB-q\fP, \fB--jq\fP="" Filter JSON output using a jq \fBexpression\fR; implies --json .PP \fB--json\fP[=""] Output JSON with the specified comma-separated \fBfields\fR, or all fields .PP \fB--no-input\fP[=false] Disable prompts and implicit editor/browser interactions .PP \fB--remote\fP="" Git \fBremote\fR used for repository discovery .PP \fB-R\fP, \fB--repo\fP="" Select a repository as \fBOWNER/REPO\fR or URL .PP \fB--sudo\fP="" Perform API requests as this \fBuser\fR (requires an administrator account) .PP \fB--user\fP="" Account \fBname\fR on the selected instance .SH EXAMPLE .EX $ gt issue edit 12 --title "Crash on start" --add-label bug $ gt issue edit 12 13 --add-assignee @me --milestone v1.0 $ gt issue edit 12 --remove-label wontfix --remove-milestone $ gt issue edit 12 --add-blocked-by 9 .EE .SH SEE ALSO \fBgt-issue(1)\fP