Project

General

Profile

RedmineIssues » History » Revision 45

Revision 44 (Bernhard Rohloff, 2018-12-20 12:57) → Revision 45/47 (Bernhard Rohloff, 2018-12-20 16:34)

h1. Issue Tracking  


 {{>toc}} 

 Issues are the heart of the Redmine business. An issue is bound to a project, owned by a user, can be related to a version, etc. 

 h2. Listing of the issue 

 From a selected issue page, you can see the work in progress that is done to fix the issue. The messages are displayed in chronological order, (to change the order - see the setting in 'My Accounts'). It is possible to quote others' messages as well as to edit yours. 

 h3. Related issues 

 'Related issues' allow developers to link issues to each other in order to remove duplicates or simplify their workflow. 

 It is possible to link issues based on various relations. Current relations are: 
 * *related to* - Just adds a link to the other issue. 

 * *duplicates* - Links issues so that closing one, will close the other (e.g. closing A will close B) 
      For example, if issue B *duplicates* A: 
      - closing B will leave A open 
      - closing A will automatically close B 

 * *duplicated by* - Reciprocal of _duplicates_. 
      For example, if issue A is *duplicated by* issue B: 
      - closing B will leave A open 
      - closing A will automatically close B 

 * *blocks* - Links issues so that closing one can be blocked by an issue which is still open 
      If issue B blocks A, 
      A can't be closed unless B is. 
 * *blocked by* - Reciprocal of _blocks_. 

 * *precedes* - Links issues to define an "order", where A needs to be completed x days before B can be started on 
      If B follows A, you can't give B 
      a starting date equal or less 
      than the ending date of A. 
 * *follows* - Reciprocal of _precedes_. 
      If issue B follows A (ex A ends the 21/04 and B begins the 22/04) 
      and you add +2 day at the ending date of A, 
      the starting and ending dates of B will be +2 too. 

 * *copied from* - Links issues to identify whether it was copied, and from which issue it was copied from. 
 * *copied to* - Reciprocal of _copied from_. 

 !redmine-related-issues.png! 

 Administrators can define the [[RedmineRoles#Permissions|permissions]] of users to add and edit such relations. 

 h3. Watchers 

 Display a list of all the users who are watching this issue. If the issue is updated, those users will be notified. 

 If you are logged in as a project administrator, it is possible for you to add users to the watch list on this page. By clicking on the Add link, a drop-down menu with a *Add* button appear, which allows you to select which user to add to the watch list. 

 !redmine-watchers.png! 

 Administrators can define the [[RedmineRoles#Permissions|permissions]] of users to add/delete watchers as well as to see the list of watchers. 

 h3. Associated revisions 

 If the administrator has defined [[RedmineSettings#Referencing-issues-in-commit-messages|Referencing Issues Keywords]], a developer that uses such keyword(s) will see its commit message displayed on the issue page, under the Associated revisions block (generally to the right of the first reply). 

 !redmine-associated-revision.png! 

 Revisions can also be associated to issues manually, from a changeset (revision) view in the Repository browser. The manual associations are reversible. They can be revoked by using the broken chain icon to the right of an added association, again in the changeset view. 

 !redmine_manual_revision_issue_association.png! 

 h2. Adding a new issue 

 People can create a new issue when they meet the [[RedmineRoles|roles and permissions]] configured by the Redmine Administrator ([[RedmineRoles#Permissions|Role: Issue Tracking > Add Issues]]). 
 When creating a new issue, one of the most important items is the [[RedmineIssueTrackingSetup#Trackers|tracker field]], which defines the nature of the issue. By default, Redmine comes with three different trackers: _bug_, _feature_, and _support_. 

 h2. Updating an existing issue 

 (TODO: describe and upload a screen-shot of update panel) 

 To edit the issue, Click _Update_ link (having a pencil icon) at the top or the bottom of the issue page: 

 !RedmineEditIssue_Update_Link.png! 

 Depending you your role permissions (see [[RedmineRoles|roles and permissions]]), you will see a complete or a limited set of editable issue properties. 

 h2. Editing an existing issue's Subject or Description 

 In order to edit an existing issue, your role has to have the [[RedmineRoles#Permissions|Issue Tracking > Edit Issues]] right in the the [[RedmineRoles|roles and permissions]] configuration.  

 # Open the issue 
 # Click _Update_ link (having a pen icon) at the top or the bottom of the issue page.  

 The description of the issue has pencil icon right next to it that you can click to change the description. 

 p=. !RedmineChangingIssueDescriptionNew.png! 

 *For old version*, a _(More)_ link after the Change Properties section title in the "Update issue" panel. 

 # See *Change properties* dialog with the _(More)_ link (see a screenshot below). 
 # Clicking on the _(More)_ link will bring-up an editable copy of the Subject and Description of the issue. 

 p=. !RedmineEditIssue_More_Link_new_location.png! 

 h2. Subtasks 

 Sometimes it is useful You can [[RedmineIssues#Updating-an-existing-issue|update an issue]] to break huge tasks down into smaller subtasks to have more control over (re)set the task or "Parent task" field. This can be used to assign smaller     parts of it to different users. One can create "convert" a normal issue into a subtask, move a subtask by either clicking the 'Add' link in the subtasks section of the from one parent task to another, or by filling the parents task id into the 'parents task' field of the subtask. This is also possible after creation by [[RedmineIssues#Updating-an-existing-issue|updating the task]]. Because it's just convert a subtask to a normal task a subtask can also have subtasks. There is no limit in the depth of this stack. issue. 

 * Subtasks can belong to a different project than the parent task. This functionality is configurable in task, dependent on the [[RedmineSettings#Allow-cross-project-subtasks|settings section]] configuration switch in the administration menu. Defining subtasks requires the permission 'Manage subtasks' which can be set in the [[RedmineRoles|roles and permissions section]] in the administration menu. [[RedmineSettings#Allow-cross-project-subtasks|admin settings]]. 
 If * Subtasks are rescheduled when a project gets copied the whole tree beneath the 'precedes' relation is set on a parent task. 
 * The parent task is copied, too. When copying only the parent task one can choose if the subtasks should also be copied. 

 h3. Filtering & sorting 

 One can show the parents task id available as    sortable a column in the issues list for sorting and there filtering. 
 * The parent subtasks issue hierarchy is also a filter option for it. 
 When the displayed in issues when list is sorted by the parent task id and also in the subtasks hierarchy is dislpayed Gantt chart. 
 * Descendant issues are displayed in an indented a tree structure. on the issue view with context menu support. 
 !subtasks-list.png! 

 As long as the tasks share the same target version the * The parents subtasks issue tree structure is also visible in the gantt view. copied on project copy. 
 !subtasks-gantt.png! 
  
 h3. Relations between the parent task and its * Subtasks feature allows unlimited nesting. 
 * Defining subtasks 

 Some properties of requires the parent task are influenced by the subtasks underneath. new permission 'Manage subtasks'. 
 The following relations exist between the parent task and its subtasks. 

 * The parent task's done percentage is the weighted average ratio of subtasks. 
 * The parent task's start is the lowest date of subtasks. 
 * The parent task's due date is the highest due date of subtasks. 
 * The parent task's spent time is the sum of the subtasks' spent times. 
 * The parent task's estimation time is the sum of the subtasks' estimation times. 
 * The parent task's priority is the highest of the subtasks' priorties. 
 * Subtasks are rescheduled when a 'precedes' relation is set on a parent task.