Skip to content

Subtasks

gira ticket create (extended)

Description: Creates a new ticket or sub-task in the project. Sub-tasks are linked to a parent ticket and are automatically associated with the same epic and sprint when possible.

Behavior:

  • When --type subtask is used:

  • Sets "issueType": "SubTask" in metadata

  • Requires --parent, which must refer to a valid ticket
  • Appends the sub-task ID to the parent’s subtasks array
  • Optionally inherits epic, sprint, and assignee from parent

Additional Options:

  • --type task|subtask – default is task
  • --parent TICKET_ID – required when --type subtask

Example:

gira ticket create --title "Write login tests" --type subtask --parent GIRA-42

gira ticket list --parent <TICKET_ID>

Description: Lists all sub-tasks associated with a given parent ticket ID.

Behavior:

  • Reads the subtasks field of the parent’s metadata.json
  • Lists each child ticket with its title, status, and assignee

Options:

  • --json – output structured list of sub-task metadata

Example:

gira ticket list --parent GIRA-42

gira ticket tree <TICKET_ID>

Description: Displays the parent ticket and all of its sub-tasks in a visual tree layout.

Behavior:

  • Prints hierarchical view: parent followed by children
  • Includes ID, title, and status for each item

Example:

gira ticket tree GIRA-42

Output:

GIRA-42  Implement authentication
├── GIRA-43  Create login form         [ToDo]
├── GIRA-44  Build backend endpoint    [InProgress]
└── GIRA-45  Validate token            [Done]

gira ticket add-dep <TICKET_ID> --blocked-by <OTHER_ID>

Description: Adds a dependency indicating that the current ticket is blocked by another.

Behavior:

  • Adds OTHER_ID to blockedBy array in TICKET_ID’s metadata
  • Optionally adds TICKET_ID to blocks array in OTHER_ID’s metadata

Options:

  • --no-reciprocal – skip adding reciprocal blocks entry

Example:

gira ticket add-dep GIRA-55 --blocked-by GIRA-42

gira ticket remove-dep <TICKET_ID> --blocked-by <OTHER_ID>

Description: Removes a dependency from a ticket.

Behavior:

  • Removes OTHER_ID from blockedBy array of TICKET_ID
  • Also removes TICKET_ID from blocks of OTHER_ID (unless skipped)

Options:

  • --no-reciprocal – do not update reciprocal relationship

Example:

gira ticket remove-dep GIRA-55 --blocked-by GIRA-42

gira ticket deps <TICKET_ID>

Description: Shows all dependencies for a given ticket.

Behavior:

  • Displays both blockedBy and blocks relationships
  • Shows status and title of referenced tickets

Options:

  • --json – output structured dependency data

Example:

gira ticket deps GIRA-55

gira ticket list --blocked

Description: Lists all tickets that are currently blocked by unresolved dependencies.

Behavior:

  • Reads blockedBy for all tickets
  • Filters those where at least one dependency is not in done status

Options:

  • --json – output structured data

Example:

gira ticket list --blocked